Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Funkcja
Dotyczy:
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: pierwszaGEOGRAPHYlubGEOMETRYwartość. -
geoExpr2: drugaGEOGRAPHYlubGEOMETRYwartość.
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
- Jeśli którakolwiek z dwóch geometrii wejściowych nie jest punktem, funkcja zwraca ST_INVALID_ARGUMENT. INVALID_TYPE.
- Jeśli dwie geometrie wejściowe mają różne wartości SRID, funkcja zwraca ST_DIFFERENT_SRID_VALUES.
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