Az Access HAVING záradéka meghatározza, hogy a GROUP BY záradékkal ellátott SELECT utasítások által visszaadott csoportosított rekordok közül melyek jelenjenek meg. Miután a GROUP BY egyesítette a rekordokat, az így egyesített rekordok közül a HAVING záradék csak azokat jeleníti meg, amelyek kielégítik a HAVING záradékban meghatározott feltételeket.
Szintaxis
SELECT mezőlista
FROM tábla WHERE kiválasztási feltételek GROUP BY csoportosító mezőlista [HAVING csoportra vonatkozó feltételek]Egy HAVING záradékot tartalmazó SELECT utasítás a következő részekből áll:
Rész |
Leírás |
mezőlista |
A visszaadandó mező vagy mezők neve az esetleges aliasokkal, összesítő SQL-függvényekkel, kiválasztási predikátumokkal (ALL, DISTINCT, DISTINCTROW vagy TOP), valamint a SELECT utasítás egyéb paramétereivel együtt. |
tábla |
Annak a táblának a neve, amelyből a rekordokat lekérdezi. |
kiválasztási feltételek |
Kiválasztási feltételek. Ha az utasítás tartalmaz WHERE záradékot, akkor a Microsoft Access adatbázismotorja a WHERE feltételeknek a rekordokra történő alkalmazása után összesíti az értékeket. |
csoportosító mezőlista |
Legfeljebb 10 mező neve, amelynek alapján a rekordokat csoportosítja. A csoportosító mezőlista mezőneveinek sorrendje meghatározza a csoportosítási szinteket a legalsótól a legfelső szintig. |
csoportra vonatkozó feltételek |
Egy kifejezés, amely meghatározza, hogy mely csoportosított rekordok jelenjenek meg. |
Megjegyzések
A HAVING záradék használata nem kötelező.
A HAVING záradék hasonlít a WHERE záradékhoz, amely a kiválasztandó rekordokat határozza meg. A HAVING záradék azt határozza meg, hogy a GROUP BY záradékkal csoportosított rekordok közül melyek jelenjenek meg:
SELECT CategoryID,
Sum(UnitsInStock) FROM Products GROUP BY CategoryID HAVING Sum(UnitsInStock) > 100 And Like "BOS*";
Egy HAVING záradék legfeljebb 40 kifejezésből állhat, amelyeket logikai operátorok, például And vagy Or fűznek össze.