Calcul de la distance orthodromique basé sur MySQL (formule Haversine)
Pour calculer la distance orthodromique entre deux points géographiques à la surface de la Terre, la formule Haversine peut être utilisée. Cette formule nécessite la longitude et la latitude des deux points.
Dans ce cas, vous souhaitez effectuer ce calcul entièrement dans MySQL, éliminant ainsi le besoin de PHP. Pour y parvenir, considérez l'instruction SQL suivante inspirée de la FAQ du code Google :
SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin(radians(lat)) ) ) AS distance FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0, 20;
Cette instruction suppose un point de départ de latitude 37 et de longitude -122 et récupère les 20 emplacements les plus proches dans un rayon de 25 miles. . Il utilise la formule Haversine pour calculer la distance entre chaque point et le point de départ. En modifiant les valeurs de latitude et de longitude en conséquence, vous pouvez adapter la requête à vos besoins spécifiques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!