Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Erhalten ähnlicher Längen- und Breitengrade aus der Datenbank

Sie sollten sich die Haversine-Formel ansehen. Siehe unten:

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;

Dadurch werden alle Datensätze zurückgegeben, die sich im Umkreis von 25 Meilen um das eingegebene lange/breite Paar befinden.