Mysql
 sql >> Base de données >  >> RDS >> Mysql

Fonction MySQL ATAN2() - Renvoie l'arc tangente de 2 valeurs

Dans MySQL, le ATAN2() renvoie l'arc tangente de deux valeurs.

Vous fournissez les deux valeurs sous forme d'arguments séparés par des virgules lors de l'appel de la fonction.

Syntaxe

La syntaxe ressemble à ceci :

ATAN2(Y,X)

Ceci est similaire au calcul de l'arc tangente de Y / X , sauf que les signes des deux arguments sont utilisés pour déterminer le quadrant du résultat.

Exemple 1 - Utilisation de base

Voici un exemple de base pour illustrer le fonctionnement de cette fonction.

SELECT ATAN2(2, 1);

Résultat :

+--------------------+
| ATAN2(2, 1)        |
+--------------------+
| 1.1071487177940904 |
+--------------------+

Et un autre exemple utilisant des valeurs différentes.

SELECT ATAN2(2.5, 1.2);

Résultat :

+--------------------+
| ATAN2(2.5, 1.2)    |
+--------------------+
| 1.1232763516377267 |
+--------------------+

Exemple 2 – Valeurs négatives

Voici un exemple utilisant des valeurs négatives.

SELECT ATAN2(-2, -1);

Résultat :

+---------------------+
| ATAN2(-2, -1)       |
+---------------------+
| -2.0344439357957027 |
+---------------------+

Et voici un exemple combinant des valeurs positives et négatives.

SELECT ATAN2(2, -1);

Résultat :

+--------------------+
| ATAN2(2, -1)       |
+--------------------+
| 2.0344439357957027 |
+--------------------+

Exemple 3 - Passer une fonction

Dans cet exemple je passe le PI() fonctionner comme l'un des arguments (le PI() renvoie une valeur constante de 3,141593).

SELECT ATAN2(PI(), 1);

Résultat :

+--------------------+
| ATAN2(PI(), 1)     |
+--------------------+
| 1.2626272556789118 |
+--------------------+

Passer un seul argument

Fournir un seul argument à cette fonction semble fonctionner (au moins sur mon système). Cependant, la documentation MySQL n'indique pas explicitement si des valeurs uniques sont valides ou non (sa syntaxe implique que seules deux valeurs sont valides).

Cependant, la fonction ATAN() permet certainement de transmettre des valeurs uniques.