Sì, c'è una grande differenza tra un NULL
valore e un valore vuoto/vuoto.
Ecco una risorsa che descrive le differenze.
Quando myText IS NULL :
myText IS NOT NULLrestituisceFALSEmyText != ''restituisceNULL(che essenzialmente si comporta comeFALSEin questo caso specifico hai scritto)
Tuttavia, non dovresti prendere l'abitudine di trattarli allo stesso modo, poiché la maggior parte delle volte si comporteranno in modo diverso:Ad esempio:
Supponi di avere una tabella tbl :
id text
1 NULL
2
3 abc
Nota: 1 contiene un NULL value e 2 contiene una stringa vuota ('' ).
Se esegui la seguente query:
SELECT * FROM tbl WHERE text != ''
... restituirà il record 3.
Se esegui la seguente query:
SELECT * FROM tbl WHERE text IS NOT NULL
... restituirà i record 2 e 3.