Grundlagen der Datenbanken
Eine Umsatztabelle (Filiale, Betrag) enthält sieben Zeilen: (A, 500), (A, 700), (B, 300), (B, 400), (C, 1200), (D, 200), (D, 900). Wie viele Zeilen liefert SELECT Filiale, SUM(Betrag) FROM Umsatz GROUP BY Filiale HAVING SUM(Betrag) >= 1000?
- A1 Zeile
- B3 Zeilen
- C4 Zeilen
Antwort und Erläuterung anzeigen
Antwort: B. 3 Zeilen
GROUP BY Filiale fasst die Zeilen nach Filialen zu vier Gruppen mit den Summen A = 500 + 700 = 1200, B = 300 + 400 = 700, C = 1200 und D = 200 + 900 = 1100 zusammen. HAVING SUM(Betrag) >= 1000 behält nur Gruppen, deren Summe 1000 oder mehr beträgt, das Ergebnis hat also 3 Zeilen: A, C und D. 1 Zeile ist das Ergebnis, wenn vor der Gruppierung nach dem Betrag jeder einzelnen Zeile ausgewählt wird, etwa mit WHERE Betrag >= 1000 (nur C). 4 Zeilen ist die Zahl der Gruppen ohne HAVING.