Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Pokud chcete vytvořit mezisoučty nebo zobrazit další souhrnné informace pro podmnožinu tabulky, vytvoříte skupiny pomocí agregovaného dotazu. Každá skupina shrnuje data pro všechny řádky v tabulce, které mají stejnou hodnotu.
Můžete například chtít zobrazit průměrnou cenu knihy v tabulce titles, ale rozdělit výsledky podle vydavatele. Provedete to tak, že dotaz seskupíte podle vydavatele (například pub_id). Výsledný výstup dotazu může vypadat takto:
Když seskupíte data, můžete zobrazit jenom souhrnná nebo seskupovaná data, například:
Hodnoty seskupených sloupců (ty, které se zobrazují v
GROUP BYklauzuli). V předchozím příkladupub_idje seskupený sloupec.Hodnoty vytvořené agregačními funkcemi, jako jsou SUM( ) a AVG( ). V předchozím příkladu se druhý sloupec vytvoří pomocí funkce AVG( ) se sloupcem
price.
Hodnoty z jednotlivých řádků nelze zobrazit. Pokud například seskupíte jenom podle vydavatele, nemůžete v dotazu zobrazit ani jednotlivé názvy. Pokud tedy do výstupu dotazu přidáte sloupce, nástroje Návrháře dotazů a zobrazení (Visual Database Tools) je automaticky přidá do GROUP BY klauzule příkazu v podokně SQL (Visual Database Tools). Pokud chcete místo toho agregovat sloupec, můžete pro něj zadat agregační funkci.
Pokud seskupíte podle více než jednoho sloupce, zobrazí každá skupina v dotazu agregované hodnoty pro všechny sloupce seskupení.
Například následující dotaz na titles tabulky seskupuje podle vydavatele (pub_id) a také podle typu knihy (type). Výsledky dotazu jsou seřazené podle vydavatele a zobrazují souhrnné informace pro každý jiný typ knihy, kterou vydavatel vytvoří:
SELECT pub_id,
type,
SUM(price) AS Total_price
FROM titles
GROUP BY pub_id, type;
Výsledný výstup může vypadat takto:
Seskupovat řádky
Začněte dotaz přidáním tabulek, které chcete shrnout do podokna Diagram.
Klikněte pravým tlačítkem myši na pozadí podokna Diagram a v místní nabídce zvolte Přidat skupinu podle. Návrhář dotazu a zobrazení přidá sloupec Seskupit podle do mřížky v podokně Kritéria.
Přidejte sloupec nebo sloupce, které chcete seskupit, do podokna Kritéria. Pokud chcete, aby se sloupec zobrazoval ve výstupu dotazu, ujistěte se, že je pro výstup vybraný sloupec Výstup.
Návrhář dotazu a zobrazení přidá
GROUP BYdo příkazu v podokně SQL klauzuli. Například příkaz SQL může vypadat takto:SELECT pub_id FROM titles GROUP BY pub_id;Přidejte sloupec nebo sloupce, které chcete agregovat, do podokna Kritéria. Ujistěte se, že je sloupec označen pro výstup.
Ve sloupci, který se má agregovat, vyberte v buňce mřížky Seskupit podle příslušnou agregační funkci.
Návrhář dotazů a zobrazení automaticky přiřadí alias sloupce, který sumarizujete. Tento automaticky vygenerovaný alias můžete nahradit smysluplnějším aliasem. Další podrobnosti najdete v tématu Vytváření aliasů sloupců (Visual Database Tools).
Odpovídající příkaz v podokně SQL může vypadat takto:
SELECT pub_id, SUM(price) AS Totalprice FROM titles GROUP BY pub_id;