<> jest standardowym SQL-92;
!=
jest jego odpowiednikiem. Oba oceniają wartości, które NULL
nie jest -- NULL
to symbol zastępczy oznaczający brak wartości.
Dlatego możesz używać tylko IS NULL
/NIE JEST NULL
jako predykaty dla takich sytuacji.
To zachowanie nie jest specyficzne dla programu SQL Server. Wszystkie dialekty SQL zgodne ze standardami działają w ten sam sposób.
Uwaga :aby porównać, czy Twoja wartość nie jest pusta , używasz IS NOT NULL
, natomiast w porównaniu z not null wartość, używasz <> „TWOJA_WARTOŚĆ”
. Nie mogę powiedzieć, czy moja wartość jest równa lub nie równa się NULL, ale mogę powiedzieć, czy moja wartość jest NULL, czy NIE NULL. Mogę porównać, czy moja wartość jest inna niż NULL.