J'ai une base de données Microsoft SQL Server avec un tableau d'emplacements. Chaque emplacement a son adresse et ses coordonnées de latitude et de longitude.Recherche de distance SQL Server
Dans mon application, l'utilisateur peut entrer un code postal et nous renvoyons une liste d'emplacements proches. C'est mon approche. a) En utilisant un code postal DB, je recherche le lat, lon pour le code postal (c'est le point central). b) je lance une recherche comme celui-ci
SELECT Position_ID, distance(pos_lon,pos_lat,zip_lon,zip_lat) dist
FROM Positions
ORDER BY dist
« distance » est une fonction qui calcule la distance entre deux points.
Le problème est que mon DB d'emplacement augmente le temps d'exécution de ces recherches commence à croître.
Y a-t-il une meilleure approche?
Quelle version de SQL? Si 2008, référez-vous à la réponse de Mark Byers ci-dessous. –