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

Wie LOG2() in MariaDB funktioniert

In MariaDB, LOG2() ist eine integrierte Funktion, die den Basis-2-Logarithmus ihres Arguments zurückgibt.

Syntax

Die Syntax lautet wie folgt:

LOG2(X)

Wobei X ist der Wert, für den der Basis-2-Logarithmus zurückgegeben werden soll.

Beispiel

Hier ist ein Beispiel zur Veranschaulichung:

SELECT LOG2(3);

Ergebnis:

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

Hier sind noch einige:

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

Ergebnis:

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

Argumentbereiche

Wenn X kleiner oder gleich 0 ist , dann NULL wird mit einer Warnung zurückgegeben.

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

Ergebnis:

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

Sehen wir uns die Warnungen an:

SHOW WARNINGS;

Ergebnis:

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

Nicht numerische Argumente

Hier ist ein Beispiel dafür, was passiert, wenn wir nicht-numerische Argumente angeben:

SELECT LOG2('Dog');

Ergebnis:

+-------------+
| LOG2('Dog') |
+-------------+
|        NULL |
+-------------+
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: 'Dog' |
| Warning | 1365 | Division by 0                           |
+---------+------+-----------------------------------------+

Null-Argumente

LOG2() gibt null zurück wenn sein Argument null ist :

SELECT LOG2(null);

Ergebnis:

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

Fehlende Argumente

Aufruf von LOG2() mit der falschen Anzahl von Argumenten oder ohne Argumente führt zu einem Fehler:

SELECT LOG2();

Ergebnis:

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

Und:

SELECT LOG2(10, 2);

Ergebnis:

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