- Kategorien:
HAVERSINE¶
Berechnet den Großkreisabstand in Kilometern zwischen zwei Punkten auf der Erdoberfläche unter Verwendung der Haversin-Formel. Die beiden Punkte werden durch ihre Breiten- und Längengrade in Dezimalgrad angegeben.
Bemerkung
Snowflake empfiehlt, die Funktion ST_DISTANCE anstelle der Funktion HAVERSINE zu verwenden. Die Funktion ST_DISTANCE führt die Berechnung mit Werten von Geodatentypen durch, sodass Sie Geodaten speichern und die Geodatenfunktionen auf die Daten anwenden können. Darüber hinaus schneiden Verknüpfungsprädikate, die die Funktion ST_DISTANCE verwenden, eine bessere Leistung als Verknüpfungsprädikate, die die Funktion HAVERSINE verwenden.
Syntax¶
HAVERSINE( <lat1>, <lon1>, <lat2>, <lon2> )
Argumente¶
lat1
Der Breitengrad des ersten Punktes in Dezimalgrad.
lon1
Der Längengrad des ersten Punktes in Dezimalgrad.
lat2
Der Breitengrad des zweiten Punktes in Dezimalgrad.
lon2
Der Längengrad des zweiten Punktes in Dezimalgrad.
Beispiele¶
Gibt einen Wert vom Typ FLOAT zurück.
Beispiele¶
Im folgenden Beispiel wird die räumliche Entfernung zwischen New York und Los Angeles in Kilometern zurückgegeben:
SELECT HAVERSINE(40.7127, -74.0059, 34.0500, -118.2500) AS distance;
+----------------+
| DISTANCE |
|----------------|
| 3936.385096389 |
+----------------+