Mysql
 sql >> Database >  >> RDS >> Mysql

Funzione MySQL LOG10() – Restituisce il logaritmo in base 10 di un valore

In MySQL, il LOG10() La funzione restituisce il logaritmo in base 10 di un valore specificato.

Fornisci il valore specificato come argomento quando chiami la funzione.

Sintassi

Questa sintassi è così:

LOG10(X)

Dove X è il valore per il quale vuoi che venga restituito il logaritmo in base 10.

Se X è minore o uguale a 0.0E0, la funzione restituisce NULL e viene generato un avviso.

Esempio 1 – Utilizzo di base

Ecco un esempio di base per dimostrare come funziona questa funzione.

SELECT LOG10(10);

Risultato:

+-----------+
| LOG10(10) |
+-----------+
|         1 |
+-----------+

Ed ecco un altro esempio che utilizza vari valori.

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

Risultato:

+------------+-------------+--------------------+--------------+
| LOG10(100) | LOG10(1000) | LOG10(3000)        | LOG10(10000) |
+------------+-------------+--------------------+--------------+
|          2 |           3 | 3.4771212547196626 |            4 |
+------------+-------------+--------------------+--------------+

Esempio 2 – Valore negativo

Ecco un esempio di passaggio di un valore negativo.

SELECT LOG10(-4);

Risultato:

+-----------+
| LOG10(-4) |
+-----------+
|      NULL |
+-----------+
1 row in set, 1 warning (0.00 sec)

Questo esempio restituisce un valore NULL (e un avviso) perché l'argomento fornito è inferiore a 0.0E0.

Esempio 3 – Zero

Ecco un esempio di passaggio di zero come argomento (otteniamo lo stesso risultato dell'esempio precedente).

SELECT LOG10(0);

Risultato:

+----------+
| LOG10(0) |
+----------+
|     NULL |
+----------+
1 row in set, 1 warning (0.00 sec)

Esempio 4 – Espressioni

Puoi anche passare espressioni come questa:

SELECT LOG10(5*2);

Risultato:

+------------+
| LOG10(5*2) |
+------------+
|          1 |
+------------+

LOG()

C'è anche il LOG() funzione (e il suo sinonimo LN() ), che restituisce il logaritmo naturale di un numero.

In effetti, puoi usare LOG() invece di LOG10() se preferisci. Per farlo, usa 10 come primo argomento della funzione. Esempio sotto.

SELECT 
  LOG(10, 100),
  LOG10(100);

Risultato:

+--------------+------------+
| LOG(10, 100) | LOG10(100) |
+--------------+------------+
|            2 |          2 |
+--------------+------------+

LOG2()

MySQL ha anche il LOG2() funzione che restituisce il logaritmo in base 2 di un valore.