sql >> Base de Datos >  >> RDS >> Mysql

Búsqueda de ubicación cercana en Google Maps, PHP y MySQL

Ok, comencemos, utilizando la consulta a continuación, obtendrá las paradas de autobús más cercanas en cierto radio (millas). La consulta devolverá todos los puntos dentro del radio definido.

$lat = -31,52;
$lon = -68,52;

$multiplier = 112.12; // use 69.0467669 if you want miles
$distance = 10; // kilometers or miles if 69.0467669

$query = "SELECT *, (SQRT(POW((lat - $lat), 2) + POW((lng - $lng), 2)) * $multiplier) AS distance FROM routes WHERE POW((lat - $lat), 2) + POW((lng - $lng), 2) < POW(($distance / $multiplier), 2) ORDER BY distance ASC";

Resultado... más cercano en un radio de 10 millas...

más lejos pero dentro de 10 millas...

Ahora repite lo mismo para destination y luego busque en su tabla autobuses en esa ruta. Consulte también este enlace... http://dev.mysql.com/doc/refman/5.0/en/extensiones-espaciales.html