In MariaDB, ATAN2()
ist eine eingebaute numerische Funktion, die den Arkustangens (Kehrwert) seiner beiden Argumente zurückgibt.
Syntax
Die Syntax lautet wie folgt:
ATAN2(Y,X)
Das Ergebnis ähnelt der Berechnung des Arkustangens von Y / X
, außer dass die Vorzeichen beider Argumente verwendet werden, um den Quadranten des Ergebnisses zu bestimmen.
Es kann auch ohne die 2
aufgerufen werden :
ATAN(Y,X)
Denken Sie daran, dass ATAN()
wird als eine andere Funktion betrachtet, die normalerweise ein einzelnes Argument akzeptiert. Es kann jedoch mit einem oder zwei Argumenten aufgerufen werden. Der Aufruf mit zwei Argumenten gibt dasselbe zurück wie der Aufruf von ATAN2()
mit zwei Argumenten.
Beispiel
Hier ist ein Beispiel, um diese Funktion zu demonstrieren:
SELECT ATAN2(2, 3);
Ergebnis:
+--------------------+ | ATAN2(2, 3) | +--------------------+ | 0.5880026035475675 | +--------------------+
Hier sind einige weitere Beispiele:
SELECT
ATAN2(-2, 3),
ATAN2(-1, 0),
ATAN2(2, -3);
Ergebnis:
+---------------------+---------------------+--------------------+ | ATAN2(-2, 3) | ATAN2(-1, 0) | ATAN2(2, -3) | +---------------------+---------------------+--------------------+ | -0.5880026035475675 | -1.5707963267948966 | 2.5535900500422257 | +---------------------+---------------------+--------------------+
Der ATAN()
Funktion
Wie bereits erwähnt, Aufruf von ATAN()
mit zwei Argumenten gibt dasselbe Ergebnis zurück wie der Aufruf von ATAN2()
mit zwei Argumenten:
SELECT
ATAN(2, 3),
ATAN2(2, 3);
Ergebnis:
+--------------------+--------------------+ | ATAN(2, 3) | ATAN2(2, 3) | +--------------------+--------------------+ | 0.5880026035475675 | 0.5880026035475675 | +--------------------+--------------------+
Nicht numerische Argumente
Folgendes passiert, wenn wir ein nicht numerisches Argument angeben:
SELECT ATAN2('Ten', 'Four');
Ergebnis:
+----------------------+ | ATAN2('Ten', 'Four') | +----------------------+ | 0 | +----------------------+ 1 row in set, 2 warnings (0.000 sec)
Sehen wir uns die Warnung an:
SHOW WARNINGS;
Ergebnis:
+---------+------+------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Ten' | | Warning | 1292 | Truncated incorrect DOUBLE value: 'Four' | +---------+------+------------------------------------------+
Fehlende Argumente
Aufruf von ATAN2()
ohne Argument führt zu einem Fehler:
SELECT ATAN2();
Ergebnis:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'ATAN2'