I Microsoft Access er GROUP BY en klausul, du kan bruge til at kombinere poster med identiske værdier i et specifikt felt i én post. Hvis du inkluderer en SQL-aggregatfunktion i SELECT-sætningen, såsom AVG, COUNT eller SUM, opretter Access en oversigtsværdi for hver post.
Instruktionerne i denne artikel gælder for Access for Microsoft 365, Access 2019, 2016, 2013 og 2010.
Using GROUP BY
Du kan finde og bruge GROUP BY-funktionen ved at bruge en SQL-forespørgsel i SQL-visningen. Det er en af de enkleste og mest direkte måder at få adgang til og kontrollere dine data på.
-
Start Access, og åbn din database.
Dette eksempel bruger Northwind Sample Database.
-
Vælg fanen Create.
-
I gruppen Forespørgsler skal du vælge Query Design.
-
I listen Add Tables skal du vælge den tabel, du vil arbejde med.
-
Vælg View i resultatgruppen, og vælg SQL View.
- Hoveddelen vil skifte til et forespørgselsterminalvindue. Her kan du indtaste enhver forespørgsel, du vil.
-
For at få en grundlæggende gruppering fra SQL, skal du indtaste noget som dette:
SELECTFROM tabelnavn WHERE kolonne/kategori LIKE 'indgang';
Erstat det faktiske navn på tabellen, kategorien eller kolonneoverskriften og den faktiske indtastningsværdi, som du leder efter.
Opdeling af forespørgslen
Overvej f.eks. en ordredatatabel, der består af nedenstående attributter:
- OrderID: En numerisk værdi, der entydigt identificerer hver ordre. Dette felt er den primære nøgle til databasen.
- Sælger: En tekstværdi, der angiver navnet på den sælger, der solgte produkterne. Dette felt er en fremmednøgle til en anden tabel, der indeholder personaleoplysninger.
- CustomerID: En numerisk værdi, der svarer til et kundekontonummer. Dette felt er også en fremmednøgle, der henviser til en tabel, der indeholder kundekontooplysninger.
- Revenue: En numerisk værdi, der svarer til salgets dollarbeløb.
Når det er tid til at udføre præstationsgennemgange for sælgere, indeholder ordretabellen værdifuld information, som kan bruges til denne gennemgang. Når du evaluerer Jim, kan du f.eks. skrive en simpel forespørgsel, der henter alle Jims salgsposter:
VÆLGFRA Ordrer HVOR Sælger LIKE 'Jim';
Dette ville hente alle poster fra databasen svarende til salg foretaget af Jim:
OrderID Salesperson CustomerID Revenue
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 002 10 12741 Jim 155 90000
Du kunne gennemgå disse oplysninger og udføre nogle manuelle beregninger for at udvikle præstationsstatistikker, men dette ville være en kedelig opgave, som du ville skulle gentage for hver sælger i virksomheden. I stedet kan du erstatte dette arbejde med en enkelt GROUP BY-forespørgsel, der beregner hver sælgers statistik i virksomheden. Du skriver forespørgslen og angiver, at databasen skal gruppere resultaterne baseret på feltet Sælger. Du kan derefter bruge en hvilken som helst af SQL-aggregatfunktionerne til at udføre beregninger på resultaterne.
Her er et eksempel. Hvis du udførte følgende SQL-sætning:
VÆLG Sælger, SUM(Omsætning) AS 'Total', MIN(Omsætning) SOM 'Mindst', MAX(Omsætning) SOM 'Størst', AVG(Omsætning) SOM 'Gennemsnit', ANTAL(Omsætning) SOM ' Nummer' FRA Ordrer GRUPPE EFTER Sælger;
Du ville få følgende resultater:
Sælger Samlet Mindste Største Gennemsnit Antal
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 63000 3300033300Bob 33300Bob
Som du kan se, giver denne kraftfulde funktion dig mulighed for at generere korte rapporter fra en SQL-forespørgsel, hvilket giver værdifuld business intelligence til lederen, der udfører præstationsvurderingerne. GROUP BY-klausulen bruges ofte i databaser til dette formål og er et værdifuldt værktøj i DBA's trickpose.