Re: SQL-Abfrage mit festen Werten
Verfasst: Fr, 02.03.2012 12:32
Hallo Phil,
was passiert,wenn Du COUNT(*) durch COUNT("Note") ersetzt ?
was passiert,wenn Du COUNT(*) durch COUNT("Note") ersetzt ?
deutsches Forum rund um Apache OpenOffice und LibreOffice
http://de.openoffice.info/
Code: Alles auswählen
SELECT "Name", 1 "Note", SUM(CASE WHEN "Note" = 1 THEN 1 ELSE 0 END) "Anzahl" FROM "Klasse" GROUP BY "Name", "Note"
UNION
SELECT "Name", 2 "Note", SUM(CASE WHEN "Note" = 2 THEN 1 ELSE 0 END) "Anzahl" FROM "Klasse" GROUP BY "Name", "Note"
UNION
SELECT "Name", 3 "Note", SUM(CASE WHEN "Note" = 3 THEN 1 ELSE 0 END) "Anzahl" FROM "Klasse" GROUP BY "Name", "Note"
UNION
SELECT "Name", 4 "Note", SUM(CASE WHEN "Note" = 4 THEN 1 ELSE 0 END) "Anzahl" FROM "Klasse" GROUP BY "Name", "Note"
UNION
SELECT "Name", 5 "Note", SUM(CASE WHEN "Note" = 5 THEN 1 ELSE 0 END) "Anzahl" FROM "Klasse" GROUP BY "Name", "Note"
UNION
SELECT "Name", 6 "Note", SUM(CASE WHEN "Note" = 6 THEN 1 ELSE 0 END) "Anzahl" FROM "Klasse" GROUP BY "Name", "Note"
Code: Alles auswählen
SELECT
"Name",
"Note",
SUM(CASE WHEN "Noten"."Note" = "Klasse"."Note" THEN 1 ELSE 0 END) "Anzahl"
FROM
"Noten" JOIN "Klasse" ON TRUE
GROUP BY
"Name","Note"
ORDER BY
"Name","Note"
Code: Alles auswählen
SELECT
"Name",
SUM(CASE WHEN "Note" = 1 THEN 1 ELSE 0 END) "Anzahl 1er",
SUM(CASE WHEN "Note" = 2 THEN 1 ELSE 0 END) "Anzahl 2er",
SUM(CASE WHEN "Note" = 3 THEN 1 ELSE 0 END) "Anzahl 3er",
SUM(CASE WHEN "Note" = 4 THEN 1 ELSE 0 END) "Anzahl 4er",
SUM(CASE WHEN "Note" = 5 THEN 1 ELSE 0 END) "Anzahl 5er",
SUM(CASE WHEN "Note" = 6 THEN 1 ELSE 0 END) "Anzahl 6er",
AVG("Note"*1.0) "Durchschnitt"
FROM
"Klasse"
GROUP BY
"Name"