V Microsoft Accessu je GROUP BY klavzula, ki jo lahko uporabite za združevanje zapisov z enakimi vrednostmi v določenem polju v enem zapisu. Če v stavek SELECT vključite agregatno funkcijo SQL, na primer AVG, COUNT ali SUM, Access ustvari vrednost povzetka za vsak zapis.
Navodila v tem članku veljajo za Access za Microsoft 365, Access 2019, 2016, 2013 in 2010.
Uporaba GROUP BY
Funkcijo GROUP BY lahko poiščete in uporabite s poizvedbo SQL v pogledu SQL. To je eden najpreprostejših in najbolj neposrednih načinov za dostop do vaših podatkov in nadzor nad njimi.
-
Zaženite Access in odprite bazo podatkov.
Ta primer uporablja vzorčno zbirko podatkov Northwind.
-
Izberite zavihek Ustvari.
-
V skupini Poizvedbe izberite Oblikovanje poizvedbe.
-
Na seznamu Dodaj tabele izberite tabelo, s katero želite delati.
-
Izberite View v skupini Rezultati in izberite SQL View.
- Glavni del se bo preklopil na okno poizvedovalnega terminala. Tukaj lahko vnesete poljubno poizvedbo.
-
Če želite dobiti osnovno združevanje iz SQL, bi morali vnesti nekaj takega:
SELECTFROM ime tabele WHERE stolpec/kategorija LIKE ‘vnos’;
Nadomestite dejansko ime tabele, naslov kategorije ali stolpca in dejansko vrednost vnosa, ki jo iščete.
Razčlenitev poizvedbe
Upoštevajte na primer tabelo s podatki o naročilu, sestavljeno iz spodnjih atributov:
- OrderID: številska vrednost, ki enolično identificira vsako naročilo. To polje je primarni ključ baze podatkov.
- Prodajalec: besedilna vrednost, ki zagotavlja ime prodajalca, ki je prodajal izdelke. To polje je tuji ključ druge tabele, ki vsebuje podatke o osebju.
- CustomerID: številska vrednost, ki ustreza številki računa stranke. To polje je tudi tuji ključ, ki se sklicuje na tabelo s podatki o računu stranke.
- Revenue: številska vrednost, ki ustreza znesku prodaje v dolarjih.
Ko pride čas za izvedbo pregledov uspešnosti za prodajalce, tabela Naročila vsebuje dragocene informacije, ki se lahko uporabijo za ta pregled. Ko ocenjujete Jima, lahko na primer napišete preprosto poizvedbo, ki pridobi vse Jimove prodajne zapise:
IZBERIIZ Naročil WHERE Prodajalec LIKE 'Jim';
To bi pridobilo vse zapise iz baze podatkov, ki ustrezajo prodaji Jima:
OrderID Salesperson CustomerID Revenue
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10000 12741 Jim 155 90000
Lahko bi pregledali te informacije in izvedli nekaj ročnih izračunov za razvoj statistike uspešnosti, vendar bi bilo to dolgočasno opravilo, ki bi ga morali ponoviti za vsakega prodajalca v podjetju. Namesto tega lahko to delo nadomestite z eno samo poizvedbo GROUP BY, ki izračuna statistiko vsakega prodajalca v podjetju. Napišete poizvedbo in določite, da naj baza podatkov združi rezultate na podlagi polja Prodajalec. Nato lahko uporabite katero koli od agregatnih funkcij SQL za izvajanje izračunov rezultatov.
Tukaj je primer. Če ste izvedli naslednji stavek SQL:
IZBERITE Prodajalec, SUM(Prihodek) KOT 'Skupaj', MIN(Prihodek) KOT 'Najmanjši', MAX(Prihodek) KOT 'Največji', AVG(Prihodek) KOT 'Povprečje', COUNT(Prihodek) KOT ' Število' FROM naročil SKUPINA PO prodajalcu;
Dobili bi naslednje rezultate:
Skupaj prodajalec Najmanjše Največje povprečno število
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6Bob 1180004000 393300 363303
Kot lahko vidite, vam ta zmogljiva funkcija omogoča ustvarjanje kratkih poročil znotraj poizvedbe SQL, kar zagotavlja dragoceno poslovno inteligenco upravitelju, ki izvaja preglede uspešnosti. Klavzula GROUP BY se pogosto uporablja v bazah podatkov za ta namen in je dragoceno orodje v vreči trikov DBA.