Riepilogo :in questo tutorial imparerai come usare SQLite IS NULL
e IS NOT NULL
operatori per verificare se un valore è NULL o meno.
Introduzione a SQLite IS NULL
operatore
NULL
è speciale. Indica che un'informazione è sconosciuta o non applicabile.
Ad esempio, alcune canzoni potrebbero non avere le informazioni sull'autore perché non sappiamo chi le abbia scritte.
Per memorizzare questi autori sconosciuti insieme alle canzoni in una tabella di database, dobbiamo usare NULL.
NULL non è uguale a nulla, anche il numero zero, una stringa vuota e così via.
Soprattutto, NULL non è uguale a se stesso. La seguente espressione restituisce 0:
NULL = NULL
Code language: SQL (Structured Query Language) (sql)
Questo perché due informazioni sconosciute non possono essere confrontate.
Vediamo i seguenti tracks
tabella dal database di esempio:
La seguente istruzione tenta di trovare tracce i cui compositori sono NULL:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer = NULL;
Code language: SQL (Structured Query Language) (sql)
Restituisce una riga vuota senza emettere alcun messaggio aggiuntivo.
Questo perché la seguente espressione restituisce sempre false:
Composer = NULL
Code language: SQL (Structured Query Language) (sql)
Non è valido utilizzare il NULL in questo modo.
Per verificare se un valore è NULL o meno, si utilizza IS NULL
operatore invece:
{ column | expression } IS NULL;
Code language: SQL (Structured Query Language) (sql)
Il IS NULL
l'operatore restituisce 1 se la column
o expression
restituisce NULL.
Per trovare tutte le tracce i cui compositori sono sconosciuti, usa IS NULL
operatore come mostrato nella query seguente:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NULL
ORDER BY
Name;
Code language: SQL (Structured Query Language) (sql)
Ecco l'output parziale:
SQLite IS NOT NULL
operatore
Il NOT
l'operatore nega il IS NULL
operatore come segue:
expression | column IS NOT NULL
Code language: SQL (Structured Query Language) (sql)
Il IS NOT NULL
l'operatore restituisce 1 se l'expression
o column
non è NULL e 0 se l'espressione o la colonna è NULL.
L'esempio seguente trova tracks
i cui compositori non sono NULL:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NOT NULL
ORDER BY
Name;
Code language: SQL (Structured Query Language) (sql)
Questa immagine illustra l'output parziale:
In questo tutorial, hai imparato a verificare se i valori in una colonna o in un'espressione sono NULL o meno utilizzando IS NULL
e IS NOT NULL
operatori.