SQLServer ruft Ergebnisse ab, bei denen der Wert Null ist
-
09-06-2019 - |
Frage
Ich frage eine SQL Server-Datenbank ab und möchte die Informationen nur erhalten, wenn eine bestimmte Zeile null ist.Ich habe eine where-Anweisung verwendet wie:
WHERE database.foobar = NULL
und es gibt nichts zurück.Ich weiß jedoch, dass es mindestens ein Ergebnis gibt, weil ich eine Instanz in der Datenbank erstellt habe, in der „foobar“ gleich null ist.Wenn ich die where-Anweisung herausnehme, werden Daten angezeigt, sodass ich weiß, dass es sich nicht um den Rest der Abfrage handelt.
Kann mir jemand helfen?
Lösung
Die korrekte Syntax lautet WHERE Database.foobar IS NULL.Sehen http://msdn.microsoft.com/en-us/library/ms188795.aspx Für mehr Information
Andere Tipps
Der Vergleich mit NULL ist jedes Mal falsch.Sie möchten stattdessen IS NULL verwenden.
x = NULL -- always false
x <> NULL -- always false
x IS NULL -- these do what you want
x IS NOT NULL
Lesen Testen auf Nullwerte, Sie benötigen IS NULL, nicht = NULL
Handelt es sich um eine SQL Server-Datenbank?Wenn ja, verwenden Sie IS NULL
anstatt den Vergleich anzustellen (MSDN).