sql >> Base de Datos >  >> RDS >> MariaDB

Cómo funciona ATAN2() en MariaDB

En MariaDB, ATAN2() es una función numérica integrada que devuelve la arcotangente (tangente inversa) de sus dos argumentos.

Sintaxis

La sintaxis es así:

ATAN2(Y,X)

El resultado es similar a calcular el arco tangente de Y / X , excepto que los signos de ambos argumentos se utilizan para determinar el cuadrante del resultado.

También se puede llamar sin el 2 :

ATAN(Y,X)

Tenga en cuenta que ATAN() se considera una función diferente que normalmente acepta un solo argumento. Sin embargo, se puede llamar con uno o dos argumentos. Llamarlo con dos argumentos devuelve lo mismo que llamar a ATAN2() con dos argumentos.

Ejemplo

Aquí hay un ejemplo para demostrar esta función:

SELECT ATAN2(2, 3);

Resultado:

+--------------------+
| ATAN2(2, 3)        |
+--------------------+
| 0.5880026035475675 |
+--------------------+

Aquí hay algunos ejemplos más:

SELECT 
    ATAN2(-2, 3),
    ATAN2(-1, 0),
    ATAN2(2, -3);

Resultado:

+---------------------+---------------------+--------------------+
| ATAN2(-2, 3)        | ATAN2(-1, 0)        | ATAN2(2, -3)       |
+---------------------+---------------------+--------------------+
| -0.5880026035475675 | -1.5707963267948966 | 2.5535900500422257 |
+---------------------+---------------------+--------------------+

El ATAN() Función

Como se mencionó, llamar a ATAN() con dos argumentos devuelve el mismo resultado que llamar a ATAN2() con dos argumentos:

SELECT 
    ATAN(2, 3),
    ATAN2(2, 3);

Resultado:

+--------------------+--------------------+
| ATAN(2, 3)         | ATAN2(2, 3)        |
+--------------------+--------------------+
| 0.5880026035475675 | 0.5880026035475675 |
+--------------------+--------------------+

Argumentos no numéricos

Esto es lo que sucede cuando proporcionamos un argumento no numérico:

SELECT ATAN2('Ten', 'Four');

Resultado:

+----------------------+
| ATAN2('Ten', 'Four') |
+----------------------+
|                    0 |
+----------------------+
1 row in set, 2 warnings (0.000 sec)

Revisemos la advertencia:

SHOW WARNINGS;

Resultado:

+---------+------+------------------------------------------+
| Level   | Code | Message                                  |
+---------+------+------------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Ten'  |
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Four' |
+---------+------+------------------------------------------+

Argumentos faltantes

Llamando a ATAN2() sin un argumento da como resultado un error:

SELECT ATAN2();

Resultado:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'ATAN2'