rayon de recherche :
select *,
acos(cos(centerLat * (PI()/180)) *
cos(centerLon * (PI()/180)) *
cos(lat * (PI()/180)) *
cos(lon * (PI()/180))
+
cos(centerLat * (PI()/180)) *
sin(centerLon * (PI()/180)) *
cos(lat * (PI()/180)) *
sin(lon * (PI()/180))
+
sin(centerLat * (PI()/180)) *
sin(lat * (PI()/180))
) * 3959 as Dist
from TABLE_NAME
having Dist < radius
order by Dist
3959 est le rayon de la Terre en miles. Remplacez cette valeur par un rayon en KM, ou n'importe quelle unité, pour obtenir des résultats sur la même unité.centerLat et centerLon sont le centre de la recherche (votre saisie), tandis que lat et lon sont les champs de la table.