Sammanfattning :i denna handledning kommer du att lära dig hur du använder SQLite IS NULL
och IS NOT NULL
operatorer för att kontrollera om ett värde är NULL eller inte.
Introduktion till SQLite IS NULL
operatör
NULL
är speciell. Det indikerar att en del av informationen är okänd eller inte tillämplig.
Till exempel kanske vissa låtar inte har låtskrivarinformationen eftersom vi inte vet vem som skrev dem.
För att lagra dessa okända låtskrivare tillsammans med låtarna i en databastabell måste vi använda NULL.
NULL är inte lika med någonting ens talet noll, en tom sträng och så vidare.
Speciellt NULL är inte lika med sig själv. Följande uttryck returnerar 0:
NULL = NULL
Code language: SQL (Structured Query Language) (sql)
Detta beror på att två okända uppgifter inte kan jämföras.
Låt oss se följande tracks
tabell från exempeldatabasen:
Följande uttalande försöker hitta spår vars kompositörer är NULL:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer = NULL;
Code language: SQL (Structured Query Language) (sql)
Den returnerar en tom rad utan att skicka något ytterligare meddelande.
Detta beror på att följande uttryck alltid utvärderas till falskt:
Composer = NULL
Code language: SQL (Structured Query Language) (sql)
Det är inte giltigt att använda NULL på detta sätt.
För att kontrollera om ett värde är NULL eller inte, använder du IS NULL
operatör istället:
{ column | expression } IS NULL;
Code language: SQL (Structured Query Language) (sql)
IS NULL
operatorn returnerar 1 om column
eller expression
utvärderas till NULL.
För att hitta alla spår vars kompositörer är okända använder du IS NULL
operator som visas i följande fråga:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NULL
ORDER BY
Name;
Code language: SQL (Structured Query Language) (sql)
Här är den partiella utmatningen:
SQLite IS NOT NULL
operatör
NOT
operatorn negerar IS NULL
operatör enligt följande:
expression | column IS NOT NULL
Code language: SQL (Structured Query Language) (sql)
IS NOT NULL
operatorn returnerar 1 om expression
eller column
är inte NULL och 0 om uttrycket eller kolumnen är NULL.
Följande exempel hittar tracks
vars kompositörer inte är NULL:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NOT NULL
ORDER BY
Name;
Code language: SQL (Structured Query Language) (sql)
Den här bilden illustrerar den partiella produktionen:
I den här handledningen har du lärt dig hur du kontrollerar om värden i en kolumn eller ett uttryck är NULL eller inte genom att använda IS NULL
och IS NOT NULL
operatörer.