Eftersom vilken jämförelseoperator som helst över NULL visas i ett sql-filter bör (och gör det) göra att raden inte väljs.
Du bör använda null safe operator <=> för att jämföra med kolumn som innehåller NULL värden och andra NOT NULL värde men <=> returnerar 1 när båda operanderna är NULL eftersom NULL anses aldrig vara lika med NULL .
Detta är ett exempel på en situation där null safe-operatör är användbar:
Du har ett bord:
Phones
----
Number
CountryCode (can be NULL)
Och du vill välja alla telefonnummer som inte kommer från Spanien (landskod 34). Första försöket är vanligtvis:
SELECT Number FROM Phones WHERE CountryCode <> 34;
Men du märker att det finns telefoner utan landskod (NULL-värde) som inte finns med och du vill inkludera dem i ditt resultat eftersom de inte är från Spanien:
SELECT Number FROM Phones WHERE CountryCode <=> 34;