- Catégories :
HAVERSINE¶
Calcule la grande distance circulaire en kilomètres entre deux points de la surface de la Terre, en utilisant la formule Haversine. Les deux points sont spécifiés par leur latitude et leur longitude en degrés décimaux.
Note
Snowflake recommande d’utiliser plutôt la fonction ST_DISTANCE que la fonction HAVERSINE. La fonction ST_DISTANCE effectue le calcul à l’aide de valeurs de types géospatiaux, ce qui vous permet de stocker des données géospatiales et d’utiliser les fonctions géospatiales sur ces données. En outre, les prédicats de jointure qui utilisent la fonction ST_DISTANCE ont de meilleures performances que les prédicats de jointure qui utilisent la fonction HAVERSINE.
Syntaxe¶
HAVERSINE( <lat1>, <lon1>, <lat2>, <lon2> )
Arguments¶
lat1
La latitude du premier point en degrés décimaux.
lon1
La longitude du premier point en degrés décimaux.
lat2
La latitude du deuxième point en degrés décimaux.
lon2
La longitude du deuxième point en degrés décimaux.
Exemples¶
La fonction renvoie une valeur de type FLOAT.
Exemples¶
L’exemple suivant renvoie la distance géospatiale en kilomètres entre New York et Los Angeles :
SELECT HAVERSINE(40.7127, -74.0059, 34.0500, -118.2500) AS distance;
+----------------+
| DISTANCE |
|----------------|
| 3936.385096389 |
+----------------+