Wie wird mit NULL-Werten in WHERE-Bedingungen umgegangen?
was passiert mit den NULL werten im SQL?
1 Antwort
Gar nicht. Wenn du etwas auf einen Wert vergleichst, dann gibt es keinen NULL Wert. Möglichkeiten sind dann ein Vergleich auf IS NULL oder je nach RDBMS sowas wie NVL oder COALESCE, wo die NULL Werte mit etwas anderen ersetzt werden.
Sprich du musst sie explizit erlauben z.B.:
SELECT * FROM TABLE
WHERE TABLE.Column = 'TEST' OR TABLE.Column IS NULL;
oder:
SELECT * FROM TABLE
WHERE COALESCE(TABLE.Column, 'TEST') = 'TEST';
Ansonsten fallen die Zeilen eben raus.
Woher ich das weiß:Berufserfahrung – Softwareentwickler/Projektleiter seit 2012