sql >> Database >  >> RDS >> MariaDB

Hoe LOG2() werkt in MariaDB

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'

  1. Een databaseback-up herstellen in OpenCart 1.5

  2. Cursorgebaseerd recordgegevenstype met cursor die meerdere waarden retourneert in Oracle Database

  3. SQLite GLOB

  4. Meest voorkomende MySQL-query's