Mysql
 sql >> Base de données >  >> RDS >> Mysql

Géolocalisation et formule Haversine

Bien que la formule du grand cercle soit précise, vous n'avez pas besoin de précision dans ce cas. Une minute de latitude équivaut à environ 1 mile (1,6 km). Une minute de longitude correspond à environ cos(LAT)*1 mile. J'envisagerais de sélectionner la case LAT +/- 3 minutes et LONG +/- (3/cos(LAT)) minutes. Si vous avez vraiment besoin d'un cercle, pas d'une boîte, faites comme si ce sont des coordonnées euclidiennes. L'erreur sur cette échelle est inférieure à la longueur du bus.

La seule partie délicate est que la durée d'une minute de longitude varie en fonction de la distance qui vous sépare de l'équateur.