Viola's Lernblog
SQL + HAVING
Dienstag, 29. Januar 2008, 10:21
+ Einführung des Befehls "having", z.B.: Abfrage von Kundennummer, Kundenname, Gesamteinkaufssumme mit Beschriftung „Summe“; das Ganze gruppiert nach Kundennummer und nur mit jenen Datensätzen mit einer Gesamteinkaufssumme > 100.000 € und sortiert nach Gesamteinkaufssumme beginnend mit höchster Einkaufssumme --> umsatzstärkste Kunden mit Mindestumsatz 100.000 €

Lösung:
SELECT Kunde.Nr AS KNr, Kunde.Vorname, Kunde.Nachname, SUM(Buch.Preis*Auftragspos.Menge) AS Summe
FROM Auftragspos, Auftrag, Kunde, Buch
WHERE Auftragspos.Auftragsnummer=Auftrag.Nr
AND Kunde.Nr=Auftrag.Kundennummer
AND Buch.Nr=Auftragspos.Buchnummer
GROUP BY Kunde.Nr
HAVING SUM(Buch.Preis*Auftragspos.Menge)>100000
ORDER BY Summe DESC

Kommentieren