Hi,
da widerspreche ich, es sei denn ich habe gerade bei der Beispielkonstruktion einen Fehler gemacht - Hab meine DB2 gerade nicht hier, daher muss ein SQL-Server 2005-Express herhalten.
Angelegt wurde eine Tabelle mit einer Spalte title, in der bei einem Datensatz ein Wert steht, beim anderen steht NULL drin.
SELECT *
FROM table
WHERE title = NULL
liefert nach deiner Logik nichts, weil der Vergleich title=NULL zu false evaluiert.
OK, kehren wir das um, wenn ich also ein NOT darauf anwende müsste ich den entsprechenden Satz bekommen:
SELECT *
FROM table
WHERE NOT (title = NULL)
-> ergibt immer noch 0 Datensätze.
Wie begründest du das dann? NOT(FALSE) = FALSE?
Meiner Meinung nach ist (title=NULL) -> NULL -> NOT(NULL) -> NULL
Oder siehst du das anders? Hab ich einen Fehler drin?
MfG
Rouven
-------------------
Death is nature's way of telling you to slow down.