От ЧЗВ на Google Code – Създаване на Локатор на магазини с PHP, MySQL и Google Maps :
Ето SQL изявлението, което ще намери най-близките 20 местоположения, които са в радиус от 25 мили до координатата 37, -122. Той изчислява разстоянието въз основа на географската ширина/дължина на този ред и целевата ширина/дължина и след това пита само за редове, където стойността на разстоянието е по-малка от 25, подрежда цялата заявка по разстояние и я ограничава до 20 резултата. За да търсите по километри вместо по мили, заменете 3959 с 6371.
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;