W programie Microsoft Access, GROUP BY to klauzula, której można użyć do łączenia rekordów o identycznych wartościach w określonym polu w jednym rekordzie. Jeśli w instrukcji SELECT uwzględnisz funkcję agregującą SQL, taką jak AVG, COUNT lub SUM, program Access utworzy wartość podsumowującą dla każdego rekordu.
Instrukcje zawarte w tym artykule dotyczą programu Access dla Microsoft 365, Access 2019, 2016, 2013 i 2010.
Korzystanie z funkcji GROUP BY
Możesz znaleźć i użyć funkcji GROUP BY za pomocą zapytania SQL w widoku SQL. To jeden z najprostszych i najbardziej bezpośrednich sposobów uzyskiwania dostępu do danych i kontrolowania ich.
-
Rozpocznij dostęp i otwórz swoją bazę danych.
Ten przykład używa przykładowej bazy danych Northwind.
-
Wybierz kartę Utwórz.
-
W grupie Zapytania wybierz Projekt zapytania.
-
Na liście Dodaj tabele wybierz tabelę, z którą chcesz pracować.
-
Wybierz View w grupie Wyniki i wybierz Widok SQL.
- Główna treść przełączy się na okno terminala zapytań. Tutaj możesz wprowadzić dowolne zapytanie.
-
Aby uzyskać podstawowe grupowanie z SQL, wpisz coś takiego:
SELECTFROM nazwa_tabeli WHERE kolumna/kategoria LIKE „wejście”;
Zastąp rzeczywistą nazwą tabeli, nagłówkiem kategorii lub kolumny oraz rzeczywistą wartością wpisu, której szukasz.
Podział zapytania
Rozważmy na przykład tabelę danych zamówienia składającą się z poniższych atrybutów:
- IDZamówienia: Wartość liczbowa jednoznacznie identyfikująca każde zamówienie. To pole jest kluczem podstawowym dla bazy danych.
- Sprzedawca: Wartość tekstowa zawierająca imię i nazwisko sprzedawcy, który sprzedał produkty. To pole jest kluczem obcym do innej tabeli zawierającej dane osobowe.
- CustomerID: Wartość liczbowa odpowiadająca numerowi konta klienta. To pole jest również kluczem obcym, odwołującym się do tabeli zawierającej informacje o koncie klienta.
- Przychód: Wartość liczbowa odpowiadająca kwocie sprzedaży w dolarach.
Kiedy przychodzi czas na przeprowadzenie przeglądu wydajności dla sprzedawców, tabela Zamówienia zawiera cenne informacje, które mogą być użyte do tego przeglądu. Oceniając Jima, możesz na przykład napisać proste zapytanie, które pobierze wszystkie rekordy sprzedaży Jima:
SELECTFROM Zamówienia GDZIE Sprzedawca LIKE „Jim”;
Spowoduje to pobranie wszystkich rekordów z bazy danych odpowiadających sprzedaży dokonanej przez Jima:
ID zamówienia Sprzedawca ID klienta Przychody
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10000 12741 Jim 155 90000
Możesz przejrzeć te informacje i wykonać kilka ręcznych obliczeń w celu opracowania statystyk wydajności, ale byłoby to żmudne zadanie, które musiałbyś powtórzyć dla każdego sprzedawcy w firmie. Zamiast tego możesz zastąpić tę pracę pojedynczym zapytaniem GROUP BY, które oblicza statystyki każdego sprzedawcy w firmie. Piszesz zapytanie i określasz, że baza danych powinna grupować wyniki na podstawie pola Sprzedawca. Następnie możesz użyć dowolnej funkcji agregującej SQL, aby wykonać obliczenia na wynikach.
Oto przykład. Jeśli wykonałeś następującą instrukcję SQL:
SELECT Sprzedawca, SUM(Przychód) AS 'Total', MIN(Przychód) AS 'Najmniejszy', MAX(Przychód) AS 'Największy', AVG(Przychód) AS 'Średnia', COUNT(Przychód) AS ' Liczba' Z GRUPY ZAMÓWIEŃ WG Sprzedawcy;
Otrzymasz następujące wyniki:
Sprzedawca Łącznie Najmniejsza Największa Średnia liczba
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6Bob 118000 4000 36000 39333 3
Jak widać, ta zaawansowana funkcja umożliwia generowanie krótkich raportów z zapytania SQL, zapewniając cenną analizę biznesową menedżerowi przeprowadzającemu przeglądy wydajności. Klauzula GROUP BY jest często używana w bazach danych do tego celu i jest cennym narzędziem w torbie sztuczek DBA.