Maison > base de données > tutoriel mysql > le corps du texte

Comment trouver efficacement des emplacements à proximité dans une base de données ?

Barbara Streisand
Libérer: 2024-11-08 09:15:02
original
866 Les gens l'ont consulté

How to Efficiently Find Nearby Locations in a Database?

Rechercher efficacement des emplacements à proximité

Lorsque vous traitez un nombre important d'emplacements stockés dans une base de données, trouver les plus proches d'un point donné peut devenir une tâche coûteuse en termes de calcul. Pour résoudre ce problème, pensez à exploiter la formule Haversine directement dans votre requête SQL, comme le démontre le tutoriel de Google sur la récupération des emplacements les plus proches dans une base de données MySQL :

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;
Copier après la connexion

En intégrant le calcul de distance dans votre requête SQL, vous pouvez minimiser le nombre d'opérations effectuées dans votre script PHP. Cette approche décharge le calcul intensif sur la base de données elle-même, ce qui permet d'obtenir un moyen plus rapide et plus efficace de récupérer les emplacements à proximité.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal