Dobře, začněme, pomocí níže uvedeného dotazu získáte nejbližší autobusové zastávky v určitém okruhu (míle). Dotaz vrátí každý bod v definovaném poloměru.
$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";
Výsledek... nejbližší v okruhu 10 mil...
nejdále, ale do 10 mil...
Nyní totéž zopakujte pro destination
a poté v tabulce vyhledejte autobusy na dané trase. Podívejte se také na tento odkaz... http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html