Datenabfrage mit SELECT
GROUP BY und HAVING

GROUP BY faßt alle Datensätze, die in der angegebenen Feldliste die selben Werte enthalten, zu einem einzigen Datensatz zusammen. Für jeden Datensatz wird ein zusammenfassender Wert berechnet, wenn eine Funktion wie z.B. Sum oder Count in der SELECT-Anweisung verwendet wird. Wird diese Klausel genutzt, muß diese nach FROM und WHERE folgen. HAVING gibt an, welche Bedingungen eine Gruppe aus Datensätze erfüllen muß, damit sie weiterverarbeitet wird. Wird HAVING genutzt, muß sie einer GROUP BY-Klausel folgen.

Syntax:
SELECT [ALL|DISTINCT]{*|[tabelle.]Feld1[,[Tabelle.]Feld2.[,...]]}
FROM Tabellenausdruck
WHERE Vergleichsausdruck
[GROUP BY [Tabelle.]Feld3[,[Tabelle.]Feld4]...]
[HAVING Suchbedingung]
[ORDER BY [Tabelle].Feld5[ASC|DESC]
[,[Tabelle.]Feld6 {ASC|DESC]...]