Hallo,
seit zwei Tagen sitze ich an einem Problem:
In meiner Datenbanktabelle gibt es die Spalte "statustype". Diese kann insgesamt 3 verschiedene Einträge (string) haben. Wenn ich eine Abfrage mache, brauch ich die Ausgabe (in einem Ergebnis), wie oft welcher Status vorkommt. Wenn ich das für jeden Eintrag mache ist es kein Problem, schwierig wird es, wenn ich die Einträge nach dem Datum Gruppieren will.
Ich habe es folgendermaßen versucht:
Das Problem ist, dass der erste Treffer der IF Anweisung auch das Ergebnis für die weiteren Gruppenrelevanten Einträge ist und somit das Ergebnis verfälscht wird.
Als Ausgabe Ausgabe brauche ich eine Tabelle, die ungefähr so aussieht:
date-----------passed---skipped---failed
2011-08-09------3-----------2---------1
Ich hoffe, ich konnte mich einigermaßen vernünftig ausdrücken und danke schonmal für eure Hilfe.
Grüße,
Christian
seit zwei Tagen sitze ich an einem Problem:
In meiner Datenbanktabelle gibt es die Spalte "statustype". Diese kann insgesamt 3 verschiedene Einträge (string) haben. Wenn ich eine Abfrage mache, brauch ich die Ausgabe (in einem Ergebnis), wie oft welcher Status vorkommt. Wenn ich das für jeden Eintrag mache ist es kein Problem, schwierig wird es, wenn ich die Einträge nach dem Datum Gruppieren will.
Ich habe es folgendermaßen versucht:
Code:
SELECT
IF(statustype = 'failed', COUNT(statustype),0) AS failed,
IF(statustype = 'passed', COUNT(statustype),0) AS passed,
IF(statustype = 'skipped', COUNT(statustype),0) AS skipped
FROM ta_data GROUP BY year(date),day(date)
Das Problem ist, dass der erste Treffer der IF Anweisung auch das Ergebnis für die weiteren Gruppenrelevanten Einträge ist und somit das Ergebnis verfälscht wird.
Als Ausgabe Ausgabe brauche ich eine Tabelle, die ungefähr so aussieht:
date-----------passed---skipped---failed
2011-08-09------3-----------2---------1
Ich hoffe, ich konnte mich einigermaßen vernünftig ausdrücken und danke schonmal für eure Hilfe.
Grüße,
Christian