Bạn sẽ cần xem xét việc sử dụng Công thức Haversine . Bạn sẽ tìm thấy rất nhiều ví dụ trực tuyến chỉ cho bạn cách triển khai công thức trong cả PHP và SQL.
Google có một ví dụ hay cho MySQL :
SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance
FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0 , 20;