Oversigt :i denne øvelse vil du lære, hvordan du bruger SQLite IS NULL og IS NOT NULL operatorer for at kontrollere, om en værdi er NULL eller ej.
Introduktion til SQLite IS NULL operatør
NULL er speciel. Det angiver, at en oplysning er ukendt eller ikke anvendelig.
For eksempel kan nogle sange ikke have sangskriveroplysningerne, fordi vi ikke ved, hvem der har skrevet dem.
For at gemme disse ukendte sangskrivere sammen med sangene i en databasetabel skal vi bruge NULL.
NULL er ikke lig med noget, selv tallet nul, en tom streng og så videre.
Især NULL er ikke lig med sig selv. Følgende udtryk returnerer 0:
NULL = NULL
Kodesprog:SQL (Structured Query Language) (sql) Dette skyldes, at to ukendte oplysninger ikke kan sammenlignes.
Lad os se følgende tracks tabel fra eksempeldatabasen:
Følgende sætning forsøger at finde spor, hvis komponister er NULL:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer = NULL;
Kodesprog:SQL (Structured Query Language) (sql) Det returnerer en tom række uden at afgive yderligere besked.
Dette skyldes, at følgende udtryk altid evalueres til falsk:
Composer = NULL
Kodesprog:SQL (Structured Query Language) (sql) Det er ikke gyldigt at bruge NULL på denne måde.
For at kontrollere om en værdi er NULL eller ej, bruger du IS NULL operatør i stedet:
{ column | expression } IS NULL;
Kodesprog:SQL (Structured Query Language) (sql)
IS NULL operator returnerer 1 hvis column eller expression evalueres til NULL.
For at finde alle spor, hvis komponister er ukendte, bruger du IS NULL operator som vist i følgende forespørgsel:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NULL
ORDER BY
Name;
Kodesprog:SQL (Structured Query Language) (sql) Her er det delvise output:
SQLite IS NOT NULL operatør
NOT operator negerer IS NULL operatør som følger:
expression | column IS NOT NULL
Kodesprog:SQL (Structured Query Language) (sql)
IS NOT NULL operator returnerer 1 hvis expression eller column er ikke NULL, og 0, hvis udtrykket eller kolonnen er NULL.
Følgende eksempel finder tracks hvis komponister ikke er NULL:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NOT NULL
ORDER BY
Name;
Kodesprog:SQL (Structured Query Language) (sql) Dette billede illustrerer det delvise output:
I denne øvelse har du lært, hvordan du kontrollerer, om værdier i en kolonne eller et udtryk er NULL eller ej ved at bruge IS NULL og IS NOT NULL operatører.