Klauzule HAVING

Platí pro
Access pro Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Klauzule HAVING v Accessu určuje seskupené záznamy, které se zobrazí v příkazu SELECT obsahujícím klauzuli GROUP BY. Poté, co klauzule GROUP BY zkombinuje záznamy, klauzule HAVING zobrazí všechny záznamy seskupené klauzulí GROUP BY, které vyhovují podmínkám klauzule HAVING.

Syntaxe

SELECT fieldlist
Tabulka FROM
Selectcriteria WHERE
GROUP BY groupfieldlist
[HAVING groupcriteria]

Příkaz SELECT obsahující klauzuli HAVING má následující části:

Část Popis
seznam_polí Název pole nebo polí, která se mají načíst, a dále jakékoli aliasy názvů polí, agregační funkce jazyka SQL, výběrové predikáty (ALL, DISTINCT, DISTINCTROW nebo TOP) nebo jiné parametry příkazu SELECT
tabulka Název tabulky, ze které se načítají záznamy
výběrová_kritéria Kritéria výběru. Pokud příkaz zahrnuje klauzuli WHERE, databázový stroj Microsoft Access po uplatnění podmínek WHERE na záznamy provádí seskupení hodnot.
seznam_seskupovacích_polí Názvy až 10 polí, které budou použity k seskupení záznamů. Pořadí názvů polí v seznamu seznam_seskupovacích_polí určuje úroveň seskupení od nejvyšší po nejnižší.
skupinová_kritéria Výraz určující, které seskupené záznamy budou zobrazeny.

Poznámky

Klauzule HAVING je nepovinná.

Klauzule HAVING má podobnou funkci jako klauzule WHERE, která určuje vybrané záznamy. Po seskupení záznamů pomocí klauzule GROUP BY je na základě klauzule HAVING určeno, které záznamy budou zobrazeny:

SELECT CategoryID,
Sum(UnitsInStock)
FROM Products
GROUP BY CategoryID
HAVING Sum(UnitsInStock) > 100 And Like "BOS*";

Klauzule HAVING může obsahovat až 40 výrazů spojených logickými operátory, například operátory And a Or.