SQL-Query mit NULL?
Thomas24
- php
Hi!
Ich möchte eine SQL-Query haben, die alle Tupel aus der DB ausliest, die bei der Spalte 'aktiviert' == 0 / NULL haben, das funktioniert aber irgendwie nicht ganz und ich kappiers nicht :-/
Wenn ich die query [i]SELECT COUNT(*), aktiviert FROM table WHERE var='var1' GROUP BY aktiviert[/i] absende, erhalte ich:
COUNT(*) | aktiviert
10 | NULL
30 | 0
10 | 1
Wenn ich [i]SELECT COUNT(*), aktiviert FROM table WHERE var='var1' AND aktiviert='0' OR aktiviert='' GROUP BY aktiviert [/i] sende, erhalte ich jedoch 34!?
Wie geht das?
lg
yo,
zum einen ist das thema falsch gewählt, datenbanken wäre das richtige topic und nicht php. zum anderen ist '' nicht unbedinkt NULL und auch die prüfung auf NULL erfolgt mit einem anderen operator, nämlich mit IS anstelle dem '='. zuletzt muss man noch bedenken, dass der logische operator AND stärker bindet als OR.
SELECT COUNT(*), aktiviert
FROM table
WHERE var='var1'
AND (aktiviert='0' OR aktiviert IS NULL)
GROUP BY aktiviert
;
Ilja
Danke
Thomas