búsqueda por radio:
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 es el radio de la Tierra en millas. Reemplace este valor con radio en KM, o cualquier unidad, para obtener resultados en la misma unidad. centerLat y centerLon son el centro de la búsqueda (su entrada), mientras que lat y lon son campos en la tabla.