Hoe om te gaan met NULL in SQL?
sobes.tech AI
Antwoord van AI
In SQL betekent NULL het ontbreken van een waarde en moet het op een speciale manier worden behandeld:
-
Vergelijkingen met NULL: De operators
=,<>werken niet metNULLzoals met een normale waarde. Bijvoorbeeld,column = NULLgeeft altijdFALSE. -
Controle op NULL: Gebruik
IS NULLofIS NOT NULLom te controleren of een waarde aanwezig is of niet. -
In aggregaten: Functies zoals
COUNT(column)houden geen rekening metNULL, terwijlCOUNT(*)alle rijen telt. -
Functies om NULL te vervangen:
COALESCE(column, default_value)geeft de eerste niet-NULL waarde uit de lijst. -
Samenvoeging van tabellen: Bij
JOINkunnen rijen metNULLin sleutelvelden niet overeenkomen, wat de uitkomst beïnvloedt. Bijvoorbeeld,INNER JOINsluit zulke rijen uit, terwijlLEFT JOINze behoudt metNULLin de gekoppelde velden.
Voorbeeld:
SELECT
user_id,
COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;
Hier vervangen we NULL in het veld email door een standaardadres en selecteren alleen gebruikers met een bekende laatste inlogdatum.