In PostgreSQL atan2()
ist eine trigonometrische Funktion, die den Arkustangens oder umgekehrten Tangens des angegebenen x zurückgibt und y Koordinaten im Bogenmaß.
Syntax
Die Syntax lautet wie folgt:
atan2(y, x)
Wobei x
und y
sind doppelte Genauigkeit Werte.
Der Arkustangens ist der Winkel von der x-Achse zu einer Linie, die den Ursprung (0, 0) und einen Punkt mit Koordinaten (x
, y
)
Beispiel
Hier ist ein Beispiel, um zu demonstrieren, wie es funktioniert.
SELECT atan2(1, 1);
Ergebnis:
0.7853981633974483
Dies gab den Arkustangens des Punktes 1,1 im Bogenmaß zurück.
Negatives Argument
Das Argument kann auch negativ sein.
SELECT atan2(-1, -1);
Ergebnis:
-2.356194490192345
Dies gab den Arkustangens des Punktes -1, -1 im Bogenmaß zurück.
Atan2() gegen Atan(x/y)
Verwenden von atan2(x, y)
ist funktional äquivalent zur Verwendung von atan(x/y)
.
Ein Unterschied besteht jedoch darin, dass, wenn Sie einen y-Wert von Null angeben, atan2()
gibt keinen Fehler zurück, wohingegen atan()
wird.
Hier ist ein Beispiel mit atan2()
:
SELECT atan2(1, 0);
Ergebnis:
1.5707963267948966
Und das bekommen wir mit atan()
beim Versuch durch Null zu dividieren:
SELECT atan(1/0);
Ergebnis:
ERROR: division by zero
Gib den Winkel in Grad zurück
Wie bereits erwähnt, atan2()
gibt sein Argument in Bogenmaß zurück . Um es in Grad zu bekommen verwenden Sie atan2d()
Funktion.
Der atan2d()
Funktion funktioniert genauso wie atan2()
, außer dass sein Argument in Grad statt in Bogenmaß zurückgegeben wird.