sql >> Databáze >  >> RDS >> MariaDB

Jak funguje LOG2() v MariaDB

V MariaDB, LOG2() je vestavěná funkce, která vrací základní-2 logaritmus svého argumentu.

Syntaxe

Syntaxe vypadá takto:

LOG2(X)

Kde X je hodnota, pro kterou se má vrátit logaritmus základu-2.

Příklad

Zde je příklad k demonstraci:

SELECT LOG2(3);

Výsledek:

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

Zde jsou některé další:

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

Výsledek:

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

Rozsahy argumentů

Pokud X je menší nebo rovno 0 a poté NULL se vrátí s varováním.

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

Výsledek:

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

Podívejme se na varování:

SHOW WARNINGS;

Výsledek:

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

Nečíselné argumenty

Zde je příklad toho, co se stane, když poskytneme nečíselné argumenty:

SELECT LOG2('Dog');

Výsledek:

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

Podívejme se na varování:

SHOW WARNINGS;

Výsledek:

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

Nulové argumenty

LOG2() vrátí null pokud je jeho argument null :

SELECT LOG2(null);

Výsledek:

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

Chybí argumenty

Volání LOG2() s nesprávným počtem argumentů nebo bez jakýchkoli argumentů vede k chybě:

SELECT LOG2();

Výsledek:

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

A:

SELECT LOG2(10, 2);

Výsledek:

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

  1. 5 funkcí pro extrakci čísla týdne z data v MariaDB

  2. Optimalizace dotazů SQL:Doporučené postupy pro lepší výkon

  3. Proč nemůže mít sloupec textu výchozí hodnotu v MySQL?

  4. SQL dotaz k vytvoření tabulky v MySQL