MariaDB
 sql >> Datenbank >  >> RDS >> MariaDB

Wie ATAN2() in MariaDB funktioniert

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'