something <> NULL zal evalueren tot NULL
. En als het in een zoekopdracht wordt gebruikt, is dat vrijwel hetzelfde als 0 (of false ).
Onthoud dat SQL driewaardige logica gebruikt en geen eenvoudige binaire logica.
Mogelijk moet u expliciet op NULL controleren met IS NULL :
... OR THING IS NULL
Als alternatief kunt u de NULL-safe is gelijk aan operator <=>
met een ontkenning (dit is MySQL-specifiek, echter, het is geen standaard SQL
):
... AND NOT (THING <=> 'This')