SQL Server gibt Zeilen zurück, die nicht identisch sind & lt; & gt; auf einen Wert und NULL

Ich habe eine Tabelle, die eine Spalte mit Werten, kann rowTypeID = (1,2,3, oder null) . Ich möchte eine Abfrage schreiben, gibt jede Zeile, die nicht über einen Wert von 3. In diesem Beispiel möchte ich alle NULL-Zeilen zusammen mit allen 1,2 Zeilen ich möchte nur nicht, dass Zeilen mit dem Wert von 3

Set ANSI null ist, die zurzeit für die Datenbank.

Ich bin neugierig, warum ich nicht schreiben können

select * from myTable where myCol <> 3

Diese Abfrage keine Zeilen zurückgibt, die NULL-in der myCol Spalte

Muss ich schreiben

select * from my Table where myCol <> 3 or myCol Is NULL 

Kann ich immer noch die NULL IST, oder kann ich es so einrichten, eine where-Klausel myCol <>3 die Rückgabe von Zeilen, die Null als Wert für meine Col

InformationsquelleAutor der Frage pehaada | 2010-12-15

Schreibe einen Kommentar