Microsoft Access GROUP BY Query

v Microsoft Access, GROUP BY je klauzule, kterou můžete použít ke spojení záznamů s identickými hodnotami v určitém poli v jednom záznamu. Pokud do příkazu SELECT zahrnete agregační funkci SQL, jako je AVG, COUNT nebo SUM, Access vytvoří souhrnnou hodnotu pro každý záznam.

Pokyny v tomto článku platí pro Access pro Microsoft 365, Access 2019, 2016, 2013 a 2010.

Programátor pomocí přenosného počítače
Mihailomilovanovic / Getty Images

Pomocí GROUP BY

Funkci GROUP BY můžete najít a použít pomocí dotazu SQL v zobrazení SQL. Je to jeden z nejjednodušších a nejpřímějších způsobů přístupu a ovládání vašich dat.

  1. Spusťte Access a otevřete databázi.

    Tento příklad používá Ukázková databáze Northwind.

  2. Vybrat Vytvořit tab.

    Vytvořit kartu v Accessu
  3. Ve skupině Dotazy vyberte Návrh dotazu.

    Návrh dotazu v Accessu
  4. V Přidat tabulky seznamu, vyberte tabulku, se kterou chcete pracovat.

    Přidat seznam tabulek
  5. Vybrat Pohled ve skupině Výsledky a vyberte SQL pohled.

    Zobrazení SQL v seznamu SQL
  6. Hlavní část se přepne do okna dotazovacího terminálu. Zde můžete zadat libovolný dotaz.

  7. Chcete-li získat základní seskupení z SQL, zadejte něco takového:

    SELECT * FROM název tabulky WHERE sloupec/kategorie LIKE ‘záznam’; 

    Nahraďte skutečný název tabulky, záhlaví kategorie nebo sloupce a skutečnou hodnotu položky, kterou hledáte.

Rozdělení dotazu

Vezměme si například tabulku s údaji o objednávce sestávající z následujících atributů:

  • Číslo objednávky: Číselná hodnota jednoznačně identifikující každou objednávku. Toto pole je primární klíč pro databázi.
  • Prodavač: Textová hodnota poskytující jméno prodejce, který produkty prodal. Toto pole je a cizí klíč do jiné tabulky obsahující personální informace.
  • Zákaznické identifikační číslo: Číselná hodnota odpovídající číslu zákaznického účtu. Toto pole je také cizí klíč odkazující na tabulku obsahující informace o zákaznickém účtu.
  • Příjmy: Číselná hodnota odpovídající částce prodeje v dolarech.

Když přijde čas provádět kontroly výkonu pro obchodníky, tabulka Objednávky obsahuje cenné informace, které lze při kontrole použít. Při hodnocení Jima můžete například napsat jednoduchý dotaz, který načte všechny záznamy prodeje Jima:

SELECT * FROM Objednávky WHERE Prodejce LIKE ‚Jim‘; 

Tím by se načetly všechny záznamy z databáze odpovídající prodejům uskutečněným Jimem:

Číslo objednávky Prodejce Číslo zákazníka Tržby
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10000
12741 Jim 155 90000.

Můžete si prohlédnout tyto informace a provést několik ručních výpočtů, abyste zvýšili výkon statistiky, ale byl by to zdlouhavý úkol, který byste museli opakovat pro každého prodejce v společnost. Místo toho můžete tuto práci nahradit jediným dotazem GROUP BY, který vypočítá statistiky každého prodejce ve společnosti. Napíšete dotaz a určíte, že databáze má seskupit výsledky na základě pole Prodejce. Poté můžete použít kteroukoli agregační funkci SQL k provádění výpočtů s výsledky.

Zde je příklad. Pokud jste provedli následující příkaz SQL:

VYBERTE prodejce, SUM (Tržby) JAKO 'Celkem', MIN (Výnosy) JAKO 'Nejmenší', MAX (Výnosy) JAKO 'Největší', AVG (Tržby) JAKO 'Průměr', COUNT (Výnosy) JAKO 'Číslo' ZE SKUPINY objednávek OD prodejce; 

Získali byste následující výsledky:

Prodejce Celkem Nejmenší Největší Průměrný počet
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6
Bob 118000 4000 36000 39333 3.

Jak můžete vidět, tato výkonná funkce vám umožňuje generovat krátké zprávy z dotazu SQL a poskytuje cenné obchodní informace manažerovi provádějícímu kontroly výkonu. Klauzule GROUP BY se k tomuto účelu v databázích často používá a je cenným nástrojem v tašce triků DBA.