Udostępnij przez


Funkcja st_azimuth

Dotyczy:zaznaczone jako tak Databricks Runtime 18.0 lub nowsze

Ważne

Ta funkcja jest dostępna w publicznej wersji testowej.

Uwaga / Notatka

Ta funkcja nie jest dostępna w usłudze Databricks SQL Classic Warehouses. Aby dowiedzieć się więcej na temat magazynów SQL usługi Databricks, zobacz Typy usługi SQL Warehouse.

Zwraca azymut względem północy od pierwszego punktu do drugiego w radianach w [0, 2π).

Składnia

st_azimuth ( geoExpr1, geoExpr2 )

Arguments

  • geoExpr1: pierwsza GEOGRAPHY lub GEOMETRY wartość.
  • geoExpr2: druga GEOGRAPHY lub GEOMETRY wartość.

Zwraca

Zwraca wartość DOUBLE równą azymutowi względem północy od pierwszego punktu do drugiego. Wynik jest wyrażony w radianach w zakresie [0, 2π).

Oczekuje się, że dane wejściowe będą mieć dwie lub dwie GEOGRAPHYGEOMETRY wartości. W przeciwnym razie zwracany jest błąd DATATYPE_MISMATCH . Obie wartości wejściowe powinny reprezentować punkty, w przeciwnym razie ST_INVALID_ARGUMENT. INVALID_TYPE zwracany jest błąd.

Jeśli projekcje 2D dwóch punktów są równe, zwracany azymut jest równy zeru.

NULL jest zwracany, jeśli którykolwiek z dwóch punktów wejściowych jest pusty.

Warunki błędu

Przykłady

-- 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