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

Comment LOG2() fonctionne dans MariaDB

Dans MariaDB, LOG2() est une fonction intégrée qui renvoie le logarithme en base 2 de son argument.

Syntaxe

La syntaxe ressemble à ceci :

LOG2(X)

X est la valeur pour laquelle renvoyer le logarithme en base 2.

Exemple

Voici un exemple pour illustrer :

SELECT LOG2(3);

Résultat :

+--------------------+
| LOG2(3)            |
+--------------------+
| 1.5849625007211563 |
+--------------------+

En voici d'autres :

SELECT 
    LOG2(2),
    LOG2(4),
    LOG2(8),
    LOG2(16);

Résultat :

+---------+---------+---------+----------+
| LOG2(2) | LOG2(4) | LOG2(8) | LOG2(16) |
+---------+---------+---------+----------+
|       1 |       2 |       3 |        4 |
+---------+---------+---------+----------+

Plages d'arguments

Si X est inférieur ou égal à 0 , puis NULL est renvoyé avec un avertissement.

SELECT 
    LOG2(0),
    LOG2(-1);

Résultat :

+---------+----------+
| LOG2(0) | LOG2(-1) |
+---------+----------+
|    NULL |     NULL |
+---------+----------+
1 row in set, 2 warnings (0.000 sec)

Vérifions les avertissements :

SHOW WARNINGS;

Résultat :

+---------+------+---------------+
| Level   | Code | Message       |
+---------+------+---------------+
| Warning | 1365 | Division by 0 |
| Warning | 1365 | Division by 0 |
+---------+------+---------------+

Arguments non numériques

Voici un exemple de ce qui se passe lorsque nous fournissons des arguments non numériques :

SELECT LOG2('Dog');

Résultat :

+-------------+
| LOG2('Dog') |
+-------------+
|        NULL |
+-------------+
1 row in set, 2 warnings (0.000 sec)

Voyons l'avertissement :

SHOW WARNINGS;

Résultat :

+---------+------+-----------------------------------------+
| Level   | Code | Message                                 |
+---------+------+-----------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Dog' |
| Warning | 1365 | Division by 0                           |
+---------+------+-----------------------------------------+

Arguments nuls

LOG2() renvoie null si son argument est null :

SELECT LOG2(null);

Résultat :

+------------+
| LOG2(null) |
+------------+
|       NULL |
+------------+

Arguments manquants

Appel de LOG2() avec le mauvais nombre d'arguments, ou sans aucun argument entraîne une erreur :

SELECT LOG2();

Résultat :

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

Et :

SELECT LOG2(10, 2);

Résultat :

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