Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
Databricks SQL
Databricks Runtime 18.0 e superiores
Importante
O suporte para valores de GEOGRAFIA está disponível em Pré-visualização Pública. O suporte para valores GEOMETRY está geralmente disponível.
Observação
Esse recurso não está disponível nos armazéns Databricks SQL Classic. Para saber mais sobre os armazéns SQL do Databricks, consulte Tipos de armazém SQL.
Devolve o azimute baseado no norte do primeiro ponto para o segundo em radianos em [0, 2π).
Sintaxe
st_azimuth ( geoExpr1, geoExpr2 )
Arguments
-
geoExpr1: O primeiroGEOGRAPHYouGEOMETRYvalor. -
geoExpr2: O segundoGEOGRAPHYouGEOMETRYvalor.
Devoluções
Devolve um DOUBLE valor igual ao azimute baseado no norte do primeiro ponto ao segundo.
O resultado está em radianos no intervalo [0, 2π).
Espera-se que as entradas sejam dois GEOGRAPHY ou dois GEOMETRY valores, caso contrário é devolto um erro de DATATYPE_MISMATCH .
Espera-se que ambos os valores de entrada representem pontos, caso contrário um ST_INVALID_ARGUMENT. INVALID_TYPE erro é devolvido.
Se as projeções 2D dos dois pontos forem iguais, o azimute retornado é zero.
NULL é devolvido se algum dos dois pontos de entrada estiver vazio.
Condições de erro
- Se
geoExpr1for do tipoGEOGRAPHYegeoExpr2for do tipoGEOMETRY, ou o contrário, a função retornará DATATYPE_MISMATCH. - Se qualquer uma das duas geometrias de entrada não for um ponto, a função retornará ST_INVALID_ARGUMENT. INVALID_TYPE.
- Se as duas geometrias de entrada tiverem valores SRID diferentes, a função retornará ST_DIFFERENT_SRID_VALUES.
Examples
-- The inputs are `GEOMETRY` values. The output (Cartesian azimuth) is displayed in degrees.
> SELECT round(st_azimuth(st_geomfromtext('POINT(0 45)'), st_geomfromtext('POINT(1 46)')) * 180.0 / pi(), 3);
45.0
-- The inputs are `GEOGRAPHY` values. The output (geographic azimuth on the WGS84 ellipsoid) is displayed in degrees.
> SELECT round(st_azimuth(st_geogfromtext('POINT(0 45)'), st_geogfromtext('POINT(1 46)')) * 180.0 / pi(), 3);
34.76