something <> NULL
bude vyhodnocena jako NULL
. A pokud se použije v dotazu, je to v podstatě stejné jako 0
(nebo false
).
Pamatujte, že SQL používá logiku tří hodnot a ne jednoduchá binární logika.
Možná budete muset zkontrolovat hodnotu NULL explicitně pomocí IS NULL
:
... OR THING IS NULL
Alternativně můžete použít NULL-safe equals operátor <=>
s negací (toto je specifické pro MySQL, nicméně není to standardní SQL
):
... AND NOT (THING <=> 'This')