Hallo
Mein Problem ist das Folgende:
Tabellen:
- Stafetten mit dem PK "Staf_ID" (unter anderen)
- Mannschaften mit dem PK "Mans_ID", den "FK Staf_ID" und dem Attribut "Kategorie" (unter anderen)
Jede Stafette hat mehrere Mannschaften. Eine Mannschaft gehört genau einer Kategorie an.
Ich möchte nun ein Statistik-Report mit einem Balkendiagram erstellen, das pro Stafette die Anzahl der Mannschaften in den verschiedenen Kategorien sowie die Anzahl der Mannschaften pro Stafette darstellt.
Es ist mir nicht gelungen eine View oder Abrage zu erstellen, die ein solches Diagram ermöglicht. Auch das Abfüllen einer Tabelle mit den Summen mittels SQL ( INSERT INTO "statistik" ("AnzKat1", "AnzKat2", ...) VALUES (SELECT "Mannschaften"."Staf_ID" AS "Dummy", COUNT( "Mannschaften".* ) AS "AnzJug" FROM "Mannschaften" AS "Mannschaften" WHERE "Kategorie" = 'Jugendliche' GROUP BY "Staf_ID" ORDER BY "Dummy" ASC, SELECT "Mannschaften"."Staf_ID" AS "Dummy", COUNT( "Mannschaften".* ) AS "AnzDamen" FROM "Mannschaften" AS "Mannschaften" WHERE "Kategorie" = 'Damen' GROUP BY "Staf_ID" ORDER BY "Dummy" ASC, , ) scheitert.
Kann mir jemand auf die "Sprünge" helfen?
Vielen Dank
Ernst Honegger
Report aus Datenbanktabellen
Moderator: Moderatoren
Re: Report aus Datenbanktabellen
Aloha
Ich weiss nicht, ob ich das richtig verstanden habe, aber wenn doch, dann sollte sich ein entsprechendes Balkendiagramm (mit den vier Werten: AnzJug, AnzDamen, AnzHerren, Insgesamt) aus der folgenden Abfrage erstellen lassen.
Ich weiss nicht, ob ich das richtig verstanden habe, aber wenn doch, dann sollte sich ein entsprechendes Balkendiagramm (mit den vier Werten: AnzJug, AnzDamen, AnzHerren, Insgesamt) aus der folgenden Abfrage erstellen lassen.
Code: Alles auswählen
SELECT
a.Staf_ID AS "Dummy",
(SELECT Count(Mans_ID) FROM Mannschaften WHERE Kategorie = 'Jugendliche' and Staf_ID = a.Staf_ID) AS "AnzJug",
(SELECT Count(Mans_ID) FROM Mannschaften WHERE Kategorie = 'Damen' and Staf_ID = a.Staf_ID) AS "AnzDamen",
(SELECT Count(Mans_ID) FROM Mannschaften WHERE Kategorie = 'Herren' and Staf_ID = a.Staf_ID) AS "AnzHerren",
Count(a.Mans_ID) AS "Insgesamt in Staffel"
FROM Mannschaften a
GROUP BY a.Staf_ID
ORDER BY Dummy
Re: Report aus Datenbanktabellen
Hallo
Besten Dank, Du hast das richtig verstanden und es funktioniert auch.
Ich habe wohl den Mechanismus des Gruppierens bisher nicht richtig verstanden.
Gruss Honegger
Besten Dank, Du hast das richtig verstanden und es funktioniert auch.
Ich habe wohl den Mechanismus des Gruppierens bisher nicht richtig verstanden.
Gruss Honegger