W PostgreSQL atan2()
jest funkcją trygonometryczną, która zwraca arcus tangens lub odwrotny tangens określonego x i y współrzędne w radianach.
Składnia
Składnia wygląda tak:
atan2(y, x)
Gdzie x
i y
to podwójna precyzja wartości.
Arcus tangens to kąt od osi x do linii zawierającej początek (0, 0) i punkt o współrzędnych (x
, y
)
Przykład
Oto przykład pokazujący, jak to działa.
SELECT atan2(1, 1);
Wynik:
0.7853981633974483
To zwróciło arcus tangens punktu 1,1 w radianach.
Argument przeczący
Argument może być również negatywny.
SELECT atan2(-1, -1);
Wynik:
-2.356194490192345
To zwróciło arcus tangens punktu -1,-1 w radianach.
Atan2() kontra Atan(x/y)
Używanie atan2(x, y)
jest funkcjonalnie równoważne z użyciem atan(x/y)
.
Jednak jedna różnica polega na tym, że jeśli określisz wartość y równą zero, atan2()
nie zwróci błędu, natomiast atan()
będzie.
Oto przykład użycia atan2()
:
SELECT atan2(1, 0);
Wynik:
1.5707963267948966
A oto, co otrzymujemy dzięki atan()
podczas próby dzielenia przez zero:
SELECT atan(1/0);
Wynik:
ERROR: division by zero
Zwróć kąt w stopniach
Jak wspomniano, atan2()
zwraca swój argument w radianach . Aby uzyskać to w stopniach , użyj atan2d()
funkcjonować.
atan2d()
funkcja działa dokładnie tak samo jak atan2()
, z wyjątkiem tego, że jego argument jest zwracany w stopniach zamiast w radianach.