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

Funzione MySQL LOG() – Restituisce il logaritmo naturale di un valore

In MySQL, il LOG() la funzione restituisce il logaritmo naturale di un valore specificato.

Fornisci il valore specificato come argomento quando chiami la funzione.

Sintassi

Questa funzione può essere utilizzata con uno o due argomenti. L'utilizzo di un argomento è simile al seguente:

LOG(X)

Dove X è il valore per il quale vuoi che venga restituito il logaritmo naturale.

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

Può essere utilizzato anche con due argomenti, come questo:

LOG(B,X)

In questo caso, la funzione restituisce il logaritmo di X alla base B . Se X è minore o uguale a 0, o se B è minore o uguale a 1, quindi NULL viene restituito.

Esempio 1 – Un argomento

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

SELECT LOG(3);

Risultato:

+--------------------+
| LOG(3)             |
+--------------------+
| 1.0986122886681098 |
+--------------------+

Ed ecco un altro esempio che utilizza un valore diverso.

SELECT LOG(0.3);

Risultato:

+---------------------+
| LOG(0.3)            |
+---------------------+
| -1.2039728043259361 |
+---------------------+

Esempio 2 – Valore negativo

Ecco un esempio di passaggio di un valore negativo.

SELECT LOG(-3);

Risultato:

+---------+
| LOG(-3) |
+---------+
|    NULL |
+---------+

Questo esempio restituisce un valore NULL perché l'argomento fornito è minore di 0.0E0.

Esempio 3 – Zero

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

SELECT LOG(0);

Risultato:

+--------+
| LOG(0) |
+--------+
|   NULL |
+--------+

Esempio 4 – Espressioni

Puoi anche passare espressioni come questa:

SELECT LOG(2+3);

Risultato:

+--------------------+
| LOG(2+3)           |
+--------------------+
| 1.6094379124341003 |
+--------------------+

Esempio 5 – Due argomenti

Ecco un esempio per dimostrare come funziona questa funzione utilizzando due argomenti.

SELECT LOG(10, 100);

Risultato:

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

E usando un altro esempio:

SELECT LOG(100, 10);

Risultato:

+--------------+
| LOG(100, 10) |
+--------------+
|          0.5 |
+--------------+

Esempio 6 – Risultato NULL

Come accennato, se il primo argomento è 1 o meno, viene restituito un valore NULL.

SELECT LOG(1, 10);

Risultato:

+------------+
| LOG(1, 10) |
+------------+
|       NULL |
+------------+

E viene restituito anche un valore NULL se il secondo argomento è uguale a zero o inferiore:

SELECT LOG(10, 0);

Risultato:

+------------+
| LOG(10, 0) |
+------------+
|       NULL |
+------------+

MySQL ha anche LN() funzione che è sinonimo di LOG() funzione (ma solo usando la sintassi a argomento singolo).

MySQL ha anche EXP() funzione che è l'inverso di LOG() funzione quando si utilizza la sintassi a argomento singolo.