I Microsoft Access er GROUP BY en klausul du kan bruke til å kombinere poster med identiske verdier i et spesifikt felt i én post. Hvis du inkluderer en SQL-aggregatfunksjon i SELECT-setningen, for eksempel AVG, COUNT eller SUM, oppretter Access en sammendragsverdi for hver post.
Instruksjonene i denne artikkelen gjelder for Access for Microsoft 365, Access 2019, 2016, 2013 og 2010.
Using GROUP BY
Du kan finne og bruke GROUP BY-funksjonen ved å bruke en SQL-spørring i SQL-visningen. Det er en av de enkleste og mest direkte måtene å få tilgang til og kontrollere dataene dine på.
-
Start Access og åpne databasen.
Dette eksemplet bruker Northwind Sample Database.
-
Velg Create-fanen.
-
I Queries-gruppen velger du Query Design.
-
I Add Tables-listen velger du tabellen du vil jobbe med.
-
Velg View i resultatgruppen og velg SQL View.
- Hoveddelen vil bytte til et spørringsterminalvindu. Her kan du skrive inn et hvilket som helst søk du vil.
-
For å få en grunnleggende gruppering fra SQL, skriver du inn noe som dette:
SELECTFROM tabellnavn WHERE kolonne/kategori LIKE ‘oppføring’;
Erstatt det faktiske navnet på tabellen, kategorien eller kolonneoverskriften og den faktiske oppføringsverdien du leter etter.
Breaking Down the Query
Vurder for eksempel en ordredatatabell som består av attributtene nedenfor:
- OrderID: En numerisk verdi som identifiserer hver ordre unikt. Dette feltet er primærnøkkelen for databasen.
- Salesperson: En tekstverdi som gir navnet på selgeren som solgte produktene. Dette feltet er en fremmednøkkel til en annen tabell som inneholder personalinformasjon.
- CustomerID: En numerisk verdi som tilsvarer et kundekontonummer. Dette feltet er også en fremmednøkkel, og refererer til en tabell som inneholder kundekontoinformasjon.
- Revenue: En numerisk verdi som tilsvarer dollarbeløpet for salget.
Når det er på tide å gjennomføre ytelsesvurderinger for selgere, inneholder ordretabellen verdifull informasjon som kan brukes til denne gjennomgangen. Når du evaluerer Jim, kan du for eksempel skrive et enkelt søk som henter alle Jims salgsoppføringer:
SELECTFROM Orders WHERE Selger LIKE ‘Jim’;
Dette vil hente alle poster fra databasen som tilsvarer salg utført av Jim:
OrderID Salesperson CustomerID Revenue
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10 12741 Jim 155 90000
Du kan se gjennom denne informasjonen og utføre noen manuelle beregninger for å utvikle resultatstatistikk, men dette ville være en kjedelig oppgave som du må gjenta for hver selger i selskapet. I stedet kan du erstatte dette arbeidet med en enkelt GROUP BY-spørring som beregner hver selgers statistikk i selskapet. Du skriver spørringen og spesifiserer at databasen skal gruppere resultatene basert på feltet Selger. Du kan deretter bruke hvilken som helst av SQL-aggregatfunksjonene for å utføre beregninger på resultatene.
Her er et eksempel. Hvis du utførte følgende SQL-setning:
VELG selger, SUM(Revenue) AS 'Total', MIN(Revenue) AS 'Smallest', MAX(Revenue) AS 'Largest', AVG(Revenue) AS 'Average', COUNT(Revenue) AS ' Nummer' FRA bestillinger GRUPPE ETTER Selger;
Du vil få følgende resultater:
Selger Tot alt Minste Største Gjennomsnittsnummer
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6Jim 250000 10000 90000 50000 5Mary 342000 24000 102000 57000 6Bob 33003300Bob 33003
Som du kan se, lar denne kraftige funksjonen deg generere korte rapporter fra en SQL-spørring, og gir verdifull forretningsintelligens til lederen som gjennomfører ytelsesgjennomgangene. GROUP BY-klausulen brukes ofte i databaser til dette formålet og er et verdifullt verktøy i DBAs triksepose.