Eventuali duplicati:
Why does NULL = NULL evaluate to false in SQL serverPerché colonna = NULL non restituisce righe?
Se si genera una query per inserire i dati nella tabella "MyTab" per la colonna --- età, sesso, data di nascita, ID
INSERT INTO MyTab
VALUES (22, '', '', 4)
Quale sarà il valore nella colonna Sesso & DOB? È NULL?
Se il valore è NULL allora ---
SELECT * FROM MyTab
WHERE Sex=NULL
sopra interrogazione dà uscita ---- nessuna riga selezionate --- perché ??
se il valore non è NULL allora ---
SELECT * FROM Mytab
WHERE Sex IS NULL
sopra interrogazione dà l'uscita ---- come ??
NULL non equivale a nulla. Quindi = NULL restituisce sempre false. Ed è per questo che esiste una sintassi speciale per il test di nullità. Questo è vero per tutti i database SQL ANSI. – APC
"Quale sarà il valore nella colonna Sex & DOB? NULL?" Dipende da RDBMS. In Oracle, sì, sarebbe nullo. In SQL Server, no, il valore sarebbe una stringa vuota, ''''. –