- 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¶
lat1A latitude do primeiro ponto em graus decimais.
lon1A longitude do primeiro ponto em graus decimais.
lat2A latitude do segundo ponto em graus decimais.
lon2A 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 |
+----------------+