Hallo,
Ist meine Lösung so okay? (Datenbankmodelldiagramm im Anhang)
a) Erstellen Sie eine SQL-Abfrage, die alle in der DB gespeicherten Parteien mit Anzahl ihrer Wähler auflistet, alphabetisch aufsteigend, sortiert nach Parteienbezeichnung
Meine Lösung:
SELECT p.P_Bezeichnung, Count(w.W_ID)
FROM Partei p
INNER JOIN Waehler w
ON p.P_ID=w.P_ID
GROUP BY p.P_Bezeichnung
ORDER BY p.P_Bezeichnung ASC
IHK:
SELECT Partei.P_Bezeichnung AS Partei,
(SELECT COUNT(W_ID)
FROM Waehler
WHERE Waehler.W_P_ID = Partei_P_ID) AS AnzahlWahler
FROM Partei
ORDER BY Partei.P_Bezeichnung
Ich habe generell das Gefühl, dass man die Aufgaben die mit Subquerys gelöst werden, auch immer mit GROUP BY lösen kann.
Lieg ich da richtig?
Edit: Eine kleine Zusatzfrage noch - Ist es wichtig die Spalten dementsprechend zu benennen ? - also wenn ein Ausschnitt aus dem Lösungs-ResultSet vorgegeben ist, muss ich da die Benamung der Spalten beachten? (z.B. AS Anzahlwaehler)
MfG