sno
Goto Top

MS - SQL IN NULL

Hallo,

möchte aus einer Auftragstabelle alle Werte lesen, die den Status '*', 'S' oder NULL haben
und dachte ich mach es so:

SELECT AUFTRAG, STATUS
FROM tblAuftrag
WHERE (STATUS IN ('*', 'S', NULL))
ORDER BY STATUS

nur leider krieg ich da jene mit NULL nicht im Ergebnis.

SELECT AUFTRAG, STATUS
FROM tblAuftrag
WHERE (STATUS IN ('*', 'S') OR STATUS IS NULL)
ORDER BY STATUS

so würde es funktionieren.

Mein Problem ist aber, dass ich das SQL Statement dynamisch zusammensetze
und da wäre Variante 1 wesentlich einfacher für micht.
Außerdem würds mich generell interessieren warum die Variante 1 nicht funktioniert.

lg
Norbert

Content-ID: 119717

Url: https://administrator.de/forum/ms-sql-in-null-119717.html

Ausgedruckt am: 23.12.2024 um 19:12 Uhr

TsukiSan
TsukiSan 04.07.2009 um 08:56:46 Uhr
Goto Top
Hallo Nobert,

bei Variante 1 vergleichst du Birnen mit Äpfeln face-wink
Ich meine es nur etwas heiter. Sorry!
die Zeichen "*" und "S" sind Strings und "NULL" gibt dir höchstens Wahr oder Falsch zurück. Schau mal hier: http://msdn.microsoft.com/de-de/library/ms188795.aspx

Gruß
Tsuki
SNo
SNo 04.07.2009 um 09:05:01 Uhr
Goto Top
Hallo Tsuki,

danke, d.h. es funktioniert sowieso nur Variante 2.

lg
Norbert
TsukiSan
TsukiSan 04.07.2009 um 09:35:16 Uhr
Goto Top
Hallo Nobert,

joh, so ist es. Variante2 funktioniert.
geht's halt wieder nicht zu einfach. Abre so isses face-wink

Viele Grüße
Tsuki