- Categorias:
HAVERSINE¶
Calcula a distância do grande círculo em quilômetros entre dois pontos na superfície da Terra, usando a fórmula de haversine. Os dois pontos são especificados por sua latitude e longitude em graus decimais.
Nota
A Snowflake recomenda o uso da função ST_DISTANCE em vez da função HAVERSINE. A função ST_DISTANCE realiza o cálculo usando valores de tipos geoespaciais, o que permite que você armazene dados geoespaciais e use as funções geoespaciais nos dados. Além disso, os predicados de junção que usam a função ST_DISTANCE têm melhor desempenho do que os predicados de junção que usam a função HAVERSINE.
Sintaxe¶
HAVERSINE( <lat1>, <lon1>, <lat2>, <lon2> )
Argumentos¶
lat1
A latitude do primeiro ponto em graus decimais.
lon1
A longitude do primeiro ponto em graus decimais.
lat2
A latitude do segundo ponto em graus decimais.
lon2
A longitude do segundo ponto em graus decimais.
Exemplos¶
Esta função retorna um valor do tipo FLOAT.
Exemplos¶
O exemplo a seguir retorna a distância geoespacial em quilômetros entre Nova York e Los Angeles:
SELECT HAVERSINE(40.7127, -74.0059, 34.0500, -118.2500) AS distance;
+----------------+
| DISTANCE |
|----------------|
| 3936.385096389 |
+----------------+