something <> NULL kommer att utvärderas till NULL
. Och om det används i en fråga är det i stort sett samma som 0 (eller false ).
Kom ihåg att SQL använder trevärdig logik och inte enkel binär logik.
Du kan behöva leta efter NULL uttryckligen med IS NULL :
... OR THING IS NULL
Alternativt kan du använda NULL-safe equals operator <=>
med en negation (detta är MySQL-specifikt, dock det är inte standard SQL
):
... AND NOT (THING <=> 'This')