In MariaDB, LOG2()
is een ingebouwde functie die de logaritme met grondtal-2 van zijn argument retourneert.
Syntaxis
De syntaxis gaat als volgt:
LOG2(X)
Waar X
is de waarde waarvoor de logaritme met grondtal 2 moet worden geretourneerd.
Voorbeeld
Hier is een voorbeeld om te demonstreren:
SELECT LOG2(3);
Resultaat:
+--------------------+ | LOG2(3) | +--------------------+ | 1.5849625007211563 | +--------------------+
Hier zijn er nog meer:
SELECT
LOG2(2),
LOG2(4),
LOG2(8),
LOG2(16);
Resultaat:
+---------+---------+---------+----------+ | LOG2(2) | LOG2(4) | LOG2(8) | LOG2(16) | +---------+---------+---------+----------+ | 1 | 2 | 3 | 4 | +---------+---------+---------+----------+
Argumentbereiken
Als X
is kleiner dan of gelijk aan 0
, dan NULL
wordt geretourneerd met een waarschuwing.
SELECT
LOG2(0),
LOG2(-1);
Resultaat:
+---------+----------+ | LOG2(0) | LOG2(-1) | +---------+----------+ | NULL | NULL | +---------+----------+ 1 row in set, 2 warnings (0.000 sec)
Laten we de waarschuwingen eens bekijken:
SHOW WARNINGS;
Resultaat:
+---------+------+---------------+ | Level | Code | Message | +---------+------+---------------+ | Warning | 1365 | Division by 0 | | Warning | 1365 | Division by 0 | +---------+------+---------------+
Niet-numerieke argumenten
Hier is een voorbeeld van wat er gebeurt als we niet-numerieke argumenten geven:
SELECT LOG2('Dog');
Resultaat:
+-------------+ | LOG2('Dog') | +-------------+ | NULL | +-------------+ 1 row in set, 2 warnings (0.000 sec)
Laten we eens kijken naar de waarschuwing:
SHOW WARNINGS;
Resultaat:
+---------+------+-----------------------------------------+ | Level | Code | Message | +---------+------+-----------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Dog' | | Warning | 1365 | Division by 0 | +---------+------+-----------------------------------------+
Nullargumenten
LOG2()
retourneert null
als het argument null
is :
SELECT LOG2(null);
Resultaat:
+------------+ | LOG2(null) | +------------+ | NULL | +------------+
Ontbrekende argumenten
LOG2()
. aanroepen met het verkeerde aantal argumenten, of zonder argumenten resulteert in een fout:
SELECT LOG2();
Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LOG2'
En:
SELECT LOG2(10, 2);
Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LOG2'