Auge: MYSQL SELECT

Beitrag lesen

Hallo

SELECT * FROM lieferschein WHERE (STATUS != 'ok' AND LIEFART ='2') OR (STATUS!= 'ok' AND LIEFART = '3')

Abgesehen von den Besonderheiten im Umgang mit NULL, auf die @dedlfix schon eingegangen ist, lässt sich der Query auch noch weiter vereinfachen. Solange du einheitlich auf den Aus- oder den Einschluss von Werten prüfen willst, kannst du IN() beziehungsweise NOT IN() für den Vergleich benutzen. Hier könntest du also die Prüfung auf andere Werte als '2' oder '3' mit LIEFART NOT IN('2', '3') (oder LIEFART NOT IN(2, 3)), falls das als Datentyp doch Zahlen sein sollten) vornehmen.

SELECT *
FROM lieferschein
WHERE (STATUS != 'ok' OR STATUS IS NULL)
  AND LIEFART NOT IN('2', '3')

Tschö, Auge

--
Ein echtes Alchimistenlabor musste voll mit Glasgefäßen sein, die so aussahen, als wären sie beim öffentlichen Schluckaufwettbewerb der Glasbläsergilde entstanden.
Hohle Köpfe von Terry Pratchett