Die HAVING-Klausel in Access gibt an, welche gruppierten Datensätze in einer SELECT-Anweisung mit einer GROUP BY-Klausel angezeigt werden. Nachdem GROUP BY Datensätze zusammengefasst hat, zeigt HAVING alle mit der GROUP BY-Klausel gruppierten Datensätze an, die die Bedingungen der HAVING-Klausel erfüllen.
Syntax
SELECT Feldliste
FROM Tabelle WHERE Auswahlkriterien GROUP BY Gruppenfeldliste [HAVING Gruppierungskriterien]Eine SELECT-Anweisung mit einer HAVING-Klausel besteht aus den folgenden Teilen:
Teil |
Beschreibung |
Feldliste |
Die Namen der Felder, die abgerufen werden sollen, sowie Feldnamenaliase, SQL-Aggregatfunktionen, Auswahlprädikate (ALL, DISTINCT, DISTINCTROW oder TOP) oder sonstige SELECT-Anweisungsoptionen. |
Tabelle |
Der Name der Tabelle, aus der Datensätze abgerufen werden. |
Auswahlkriterien |
Ein Auswahlkriterium. Wenn die Anweisung eine WHERE-Klausel enthält, gruppiert das Microsoft Access-Datenbankmodul Werte, nachdem die WHERE-Bedingungen auf die Datensätze angewendet wurden. |
Gruppenfeldliste |
Die Namen von bis zu 10 Feldern, die zum Gruppieren von Datensätzen verwendet werden. Die Reihenfolge der Feldnamen in der Gruppenfeldliste bestimmt die Gruppierungsebenen von der höchsten bis zur niedrigsten Gruppierungsebene. |
Gruppierungskriterien |
Ein Ausdruck, der festlegt, welche gruppierten Datensätze angezeigt werden sollen. |
Hinweise
HAVING ist optional.
HAVING ist mit der WHERE-Klausel vergleichbar, die bestimmt, welche Datensätze ausgewählt werden. Nachdem Datensätze mit GROUP BY gruppiert wurden, bestimmt HAVING, welche Datensätze angezeigt werden:
SELECT CategoryID,
Sum(UnitsInStock) FROM Products GROUP BY CategoryID HAVING Sum(UnitsInStock) > 100 And Like "BOS*";
Eine HAVING-Klausel kann bis zu 40 Ausdrücke enthalten, die durch logische Operatoren, wie z. B. And und Or, miteinander verknüpft sind.