sql >> Base de Datos >  >> RDS >> MariaDB

Cómo funciona LOG10() en MariaDB

En MariaDB, LOG10() es una función integrada que devuelve el logaritmo en base 10 de su argumento.

Sintaxis

La sintaxis es así:

LOG10(X)

Donde X es el valor para el que se devuelve el logaritmo en base 10.

Ejemplo

Aquí hay un ejemplo para demostrarlo:

SELECT LOG10(3);

Resultado:

+---------------------+
| LOG10(3)            |
+---------------------+
| 0.47712125471966244 |
+---------------------+

Aquí hay algunos más:

SELECT 
    LOG10(10),
    LOG10(100),
    LOG10(1000),
    LOG10(10000);

Resultado:

+-----------+------------+-------------+--------------+
| LOG10(10) | LOG10(100) | LOG10(1000) | LOG10(10000) |
+-----------+------------+-------------+--------------+
|         1 |          2 |           3 |            4 |
+-----------+------------+-------------+--------------+

Rangos de argumentos

Si X es menor o igual que 0 , luego NULL se devuelve con una advertencia.

SELECT 
    LOG10(0),
    LOG10(-2);

Resultado:

+----------+-----------+
| LOG10(0) | LOG10(-2) |
+----------+-----------+
|     NULL |      NULL |
+----------+-----------+
1 row in set, 2 warnings (0.001 sec)

Revisemos las advertencias:

SHOW WARNINGS;

Resultado:

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

Argumentos no numéricos

Este es un ejemplo de lo que sucede cuando proporcionamos argumentos no numéricos:

SELECT LOG10('Homer');

Resultado:

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

Veamos la advertencia:

SHOW WARNINGS;

Resultado:

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

Argumentos nulos

LOG10() devuelve null si su argumento es null :

SELECT LOG10(null);

Resultado:

+-------------+
| LOG10(null) |
+-------------+
|        NULL |
+-------------+

Argumentos faltantes

Llamando a LOG10() con el número incorrecto de argumentos, o sin ningún argumento da como resultado un error:

SELECT LOG10();

Resultado:

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

Y:

SELECT LOG10(10, 2);

Resultado:

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