SELECT *, SQRT( POW(69.1 * (? - geo_lat), 2) + POW(69.1 * (? - geo_lon) * COS(RADIANS(geo_lat)), 2) ) AS distance FROM posts WHERE id <> ? AND FROM_UNIXTIME(created) >= DATE_SUB(NOW(), INTERVAL 1 MONTH) HAVING distance < 1 AND distance IS NOT NULL ORDER BY distance LIMIT 25;