viele felder mit bedingung
richard
- datenbank
hallo,
ich versuche eine mysql abfrage zu gestalten, die es mir möglich macht bei sämtlichen datensätzen einer tabelle die eine bestimmte id besitzen zu zählen, wie viele felder einen bestimmten wert enthalten. also beispielsweise NULL.
eine möglichkeit wäre
SELECT * FROM table_name WHERE id = meine_id OR id = nocheine_id OR id = sind_mehrere_ids usw..
und danach alle ergebnisreihen in schleifen nach dem gesuchten wert durchsuchen und mitzählen. das COUNT von mysql zählt ja nur datensätze und nicht felder, stimmt das?
aber das kann es doch nicht sein, oder?
außerdem, gibt es eine möglichkeit in einem datensatz ein 'allgemeines feld' abzufragen? also sowas wie SELECT * FROM table WHERE WERT = 'NULL'?
freue mich über jeden hinweis, hilfe oder link.
r.
außerdem, gibt es eine möglichkeit in einem datensatz ein 'allgemeines feld' abzufragen? also sowas wie SELECT * FROM table WHERE WERT = 'NULL'?
sowas gibt es.
Meinst du vieleicht
SELECT count(id) FROM table WHERE IN('id1','id2','id3' usw.) AND wert IS NULL
hab es nicht ausprobiert, aber sowas sollte gehen.
mfg Tobias
SELECT count(id) FROM table WHERE IN('id1','id2','id3' usw.) AND wert IS NULL
hallo!
danke mail für dein posting...
deine abfrage hat nicht funktioniert weil IN einen voranstehenden ausdruck verlangt. trotzdem habe ich mich näher mit 'IN' beschäftigt, und habe wieder eine frage dazu:
IN vergleicht. will ich mehrere id's finden, muss ich die id_spalte als audruck davor stellen und die zu suchenden id's in die klammern notieren.
WIE aber geht das andersrum? wie also kann ich in vielen Spalten nach einem wert suchen, folgendes funktioniert nämlich nicht:
SELECT * FROM table WHERE 'NULL' IN (a1, a2, a3, a4, a5);
gibt es keine möglichkeit IN 'umzukehren'?
SELECT count(id) FROM table WHERE IN('id1','id2','id3' usw.) AND wert IS NULL
deine abfrage hat nicht funktioniert weil IN einen voranstehenden ausdruck verlangt.
Ups Mein Fehler,
SELECT count(id) FROM table WHERE id IN('id1','id2','id3' usw.) AND wert IS NULL
Muss es natürlich heissen.
id name vorname
----------------------
1 meier ernst
2 müller thomas
3 huber sabrina
"...WHERE id IN('1','3') ..."
Liefert dann nur meier und huber
So einfach ist das mit dem "IN".