V PostgreSQL atan2()
je trigonometrická funkce, která vrací arkustangens nebo inverzní tangens zadaného x a y souřadnice v radiánech.
Syntaxe
Syntaxe vypadá takto:
atan2(y, x)
Kde x
a y
jsou dvojitá přesnost hodnoty.
Arkustangens je úhel od osy x k přímce obsahující počátek (0, 0) a bod se souřadnicemi (x
, y
)
Příklad
Zde je příklad demonstrující, jak to funguje.
SELECT atan2(1, 1);
Výsledek:
0.7853981633974483
Tím se vrátil arkustangens bodu 1,1 v radiánech.
Negativní argument
Argument může být i záporný.
SELECT atan2(-1, -1);
Výsledek:
-2.356194490192345
Tím se vrátil arkustangens bodu -1,-1 v radiánech.
Atan2() vs Atan(x/y)
Pomocí atan2(x, y)
je funkčně ekvivalentní použití atan(x/y)
.
Jeden rozdíl je však v tom, že pokud zadáte hodnotu y nulu, atan2()
nevrátí chybu, zatímco atan()
bude.
Zde je příklad použití atan2()
:
SELECT atan2(1, 0);
Výsledek:
1.5707963267948966
A zde je to, co získáme pomocí atan()
při pokusu o dělení nulou:
SELECT atan(1/0);
Výsledek:
ERROR: division by zero
Vraťte úhel ve stupních
Jak již bylo zmíněno, atan2()
vrátí svůj argument v radiánech . Aby to bylo ve stupních , použijte atan2d()
funkce.
atan2d()
funkce funguje úplně stejně jako atan2()
, kromě toho, že jeho argument je vrácen ve stupních místo v radiánech.