Mysql ifnull

Mysql ifnull
“In questo post, parleremo della funzione ifnull in mysql. Copriremo anche esempi pratici di come utilizzare la funzione."

Qual è la funzione ifnull in mysql?

La funzione ifnull () in MySQL consente di introdurre ed eseguire le operazioni di flusso di controllo nelle query SQL.

Lo snippet di seguito mostra la sintassi della funzione:

Ifnull (expr1, expr2)

La funzione consente di passare due argomenti. Restituirà quindi il primo argomento se non è nullo e il secondo argomento se altrimenti.

È possibile passare gli argomenti come valori letterali o espressioni SQL supportate. È bene ricordare che il tipo di ritorno della funzione può variare a seconda del contesto in cui viene utilizzato.

Esempi

I seguenti esempi illustrano i vari metodi di utilizzo della funzione MySQL IFNULL.

mysql> Seleziona ifnull (1,0);

In questo caso, la funzione valuta tra 1 e 0. Il valore di ritorno è come mostrato:

+-------------+
| ifnull (1,0) |
+-------------+
| 1 |
+-------------+
1 riga in set (0.00 sec)

La query sopra ritorna 1 poiché il primo argomento non è nullo. Tieni presente che 0 non è trattato come un valore nullo. Per esempio:

mysql> Seleziona ifnull (0,1);

Produzione:

+-------------+
| ifnull (0,1) |
+-------------+
| 0 |
+-------------+
1 riga in set (0.00 sec)

La query sopra dovrebbe restituire 1 poiché uno 0 non è trattato come un valore nullo.

Un altro esempio è mostrato di seguito:

mysql> Seleziona ifnull (null, 1);

In questo esempio, la funzione dovrebbe restituire il secondo parametro poiché il primo parametro contiene un valore nullo.

+-----------------+
| ifnull (null, 1) |
+-----------------+
| 1 |
+-----------------+
1 riga in set (0.00 sec)

Allo stesso modo, una stringa vuota non viene trattata come un valore nullo. Un'illustrazione di esempio è mostrata di seguito:

mysql> Seleziona ifnull (", @@ sessione.fuso orario);

In questo caso, la funzione dovrebbe restituire una stringa vuota come mostrato:

+---------------------------------+
| ifnull (", @@ sessione.time_zone) |
+---------------------------------+
| |
+---------------------------------+
1 riga in set (0.01 sec)

Come accennato, possiamo usare la funzione ifnull con un'espressione. Per esempio:

mysql> Seleziona ifnull (1/0, 'Hello');

In questo caso, la funzione dovrebbe restituire il secondo parametro come divisione per zero restituisce un valore nullo.

+----------------------+
| ifnull (1/0, 'ciao') |
+----------------------+
| Ciao |
+----------------------+
1 riga in set, 1 avviso (0.00 sec)

Infine, possiamo usare la funzione IfNull per selezionare i valori da una tabella, come illustrato nell'esempio seguente:

mysql> Crea database se non esiste temp_db;
mysql> usa temp_db;
mysql> crea tabella temp_table (id int auto_increment chiave principale, nome varchar (100), paese varchar (20));

Possiamo quindi inserire i dati come mostrato:

mysql> inserisci in temp_table (nome, paese)
-> VALORI ("Emily", "United-States"),
-> ('Natalia', 'Italia'),
-> ("Tobia", null),
-> ('Michael', null);

Infine, possiamo utilizzare la funzione ifnull per selezionare i record in cui il valore della colonna del paese non è nullo, come mostrato:

mysql> seleziona nome, ifnull (paese, 'non disponibile') Paese da temp_table;

La richiesta sopra deve sostituire le colonne null con "non disponibile".

+---------+---------------+
| nome | Paese |
+---------+---------------+
| Emily | Stati Uniti |
| Natalia | Italia |
| Tobia | Non disponibile |
| Michael | Non disponibile |
+---------+---------------+
4 righe in set (0.01 sec)

Conclusione

In questo post, hai imparato come utilizzare la funzione IfNull in MySQL per verificare se un parametro specifico è nullo o no.

Grazie per aver letto!!