something <> NULL
valuterà NULL
. E se utilizzato in una query è praticamente lo stesso di 0
(o false
).
Ricorda che SQL utilizza logica a tre valori e non semplice logica binaria.
Potrebbe essere necessario verificare la presenza di NULL in modo esplicito utilizzando IS NULL
:
... OR THING IS NULL
In alternativa puoi usare NULL-safe equals operatore <=>
con una negazione (questo è specifico di MySQL, tuttavia, non è SQL standard
):
... AND NOT (THING <=> 'This')