Effiziente Suche nach Standorten in der Nähe
Beim Umgang mit einer großen Anzahl von Standorten, die in einer Datenbank gespeichert sind, kann es hilfreich sein, die Standorte zu finden, die einem bestimmten Punkt am nächsten liegen zu einer rechenintensiven Aufgabe werden. Um dieses Problem zu lösen, sollten Sie die Haversine-Formel direkt in Ihrer SQL-Abfrage nutzen, wie im Google-Tutorial zum Abrufen der nächstgelegenen Standorte in einer MySQL-Datenbank gezeigt:
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;
Durch die Integration der Entfernungsberechnung in Ihre SQL-Abfrage Sie können die Anzahl der in Ihrem PHP-Skript ausgeführten Vorgänge minimieren. Dieser Ansatz verlagert die intensive Berechnung auf die Datenbank selbst, was zu einer schnelleren und effizienteren Möglichkeit führt, die Standorte in der Nähe abzurufen.
Das obige ist der detaillierte Inhalt vonWie finde ich effizient Standorte in der Nähe in einer Datenbank?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!