Heim > Datenbank > MySQL-Tutorial > Wie kann SQL den nächstgelegenen Breiten- und Längengrad ermitteln?

Wie kann SQL den nächstgelegenen Breiten- und Längengrad ermitteln?

Patricia Arquette
Freigeben: 2025-01-18 16:01:09
Original
530 Leute haben es durchsucht

How Can SQL Find the Nearest Latitude and Longitude?

SQL-Methode zum Ermitteln des nächstgelegenen Breiten- und Längengrads

In räumlichen Geographieanwendungen ist die Bestimmung der Breiten- und Längenkoordinaten, die einem bestimmten Koordinatensystem am nächsten liegen, eine häufige Aufgabe. Diese Aufgabe entsteht, wenn Sie die nächstgelegene Stadt, das nächste Wahrzeichen oder einen anderen interessanten Punkt anhand der Entfernung von einem bestimmten Standort identifizieren müssen.

Eine Möglichkeit, dieses Problem zu lösen, ist die Verwendung von SQL-Abfragen. SQL bietet eine Reihe von Funktionen, mit denen Entfernungen berechnet und Daten basierend auf Entfernungsbedingungen abgerufen werden können.

Abfragestruktur

Die folgende Abfrage verwendet die Haversine-Formel, um den Abstand zwischen einer bestimmten Koordinate und allen Koordinaten in der Datenbanktabelle zu berechnen. Diese Formel bestimmt die Entfernung basierend auf dem Unterschied zwischen Breiten- und Längengrad und berücksichtigt dabei die Erdkrümmung:

<code class="language-sql">SELECT latitude, longitude, SQRT(
    POW(69.1 * (latitude - [startlat]), 2) +
    POW(69.1 * ([startlng] - longitude) * COS(latitude / 57.3), 2)) AS distance
FROM TableName HAVING distance < 25
ORDER BY distance ASC;</code>
Nach dem Login kopieren
  • [startlat] und [startlng] repräsentieren die Breiten- und Längenkoordinaten des Startpunkts.
  • 25 Gibt den maximalen Entfernungsschwellenwert an. Datensätze mit einer Distanz größer als 25 werden aus den Ergebnissen ausgeschlossen.
  • ORDER BY distance ASC Sortieren Sie die Ergebnisse in aufsteigender Reihenfolge nach Entfernung, die nächstgelegenen Koordinaten zuerst.

Abfrageausführung

Wenn diese Abfrage ausgeführt wird, werden der Breiten- und Längengrad der nächstgelegenen Koordinate innerhalb eines angegebenen Entfernungsschwellenwerts zurückgegeben. Die Ergebnisse werden nach Entfernung sortiert, wobei die nächstgelegenen Koordinaten zuerst aufgeführt werden.

Mit dieser Methode können Sie effektiv die nächstgelegenen Breiten- und Längenkoordinaten finden, die Ihren Kriterien entsprechen. Dieses Wissen kann in verschiedenen Bereichen wie standortbezogenen Diensten, Logistik und Datenanalyse angewendet werden.

Das obige ist der detaillierte Inhalt vonWie kann SQL den nächstgelegenen Breiten- und Längengrad ermitteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage