MariaDB
 sql >> Base de Dados >  >> RDS >> MariaDB

Como o ATAN2() funciona no MariaDB


No MariaDB, ATAN2() é uma função numérica interna que retorna o arco tangente (tangente inversa) de seus dois argumentos.

Sintaxe


A sintaxe fica assim:
ATAN2(Y,X)

O resultado é semelhante ao cálculo do arco tangente de Y / X , exceto que os sinais de ambos os argumentos são usados ​​para determinar o quadrante do resultado.

Também pode ser chamado sem o 2 :
ATAN(Y,X)

Tenha em mente que ATAN() é considerada uma função diferente que normalmente aceita um único argumento. No entanto, ele pode ser chamado com um ou dois argumentos. Chamá-lo com dois argumentos retorna o mesmo que chamar ATAN2() com dois argumentos.

Exemplo


Aqui está um exemplo para demonstrar esta função:
SELECT ATAN2(2, 3);

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

Aqui estão mais alguns exemplos:
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 |
+---------------------+---------------------+--------------------+

O ATAN() Função


Como mencionado, chamar ATAN() com dois argumentos retorna o mesmo resultado que chamar ATAN2() com dois argumentos:
SELECT 
    ATAN(2, 3),
    ATAN2(2, 3);

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

Argumentos não numéricos


Veja o que acontece quando fornecemos um argumento não numérico:
SELECT ATAN2('Ten', 'Four');

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

Vamos verificar o aviso:
SHOW WARNINGS;

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

Argumentos ausentes


Chamando ATAN2() sem um argumento resulta em um erro:
SELECT ATAN2();

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