Łapka LogoŁapka Infa
📈
Bazy Danych

MS Access: Sumowanie i Grupowanie

Jak sprawić, by MS Access zliczał i podsumowywał rekordy? Odkryj potęgę wiersza SUMA.

Funkcje Agregujące w Widoku Projektu

Gdy robisz zwykłe SELECT w Accessie, dla każdych tysiąca klientów kwerenda zwróci Ci po prostu listę. Co jeśli zadanie CKE brzmi "Wypisz ile sztuk oprogramowania kupiła dana firma?"

Aby to zrobić, musisz wymusić tryb grupowania - włączyć odpowiednik funkcji GROUP BY w siatce projektu.

Jak włączyć wiersz "Suma" (Grupowanie)?

W Widoku Projektu kwerendy, mając już zrzucone odpowiednie pola do siatki (np. "Firma" oraz "Ilosc_Oprogramowania"), spójrz na Górną Wstążkę (Menu) i odszukaj duży, charakterystyczny przycisk Suma ($\Sigma$). Zazwyczaj znajduje się on w sekcji Projektowanie Kwerendy po prawej stronie.

Po jego kliknięciu: na samym dole w Siatce Projektu, znikąd, zmaterializuje się nowy, cudowny wiersz opisany słowem Suma:. Każda zrzucona kolumna dostanie domyślnie tryb "Grupuj według" (Group By).

Zmiana funkcji z Grupowania na Podsumowanie

Ponieważ szukamy łącznie zakupionego przez Firmę oprogramowania:

  1. Kolumnę Firma w wierszu Suma (Podsumowanie) zostawiamy na "Grupuj według". Dzięki temu nasze tysiąc rzędów zwinie się w rzędy unikalnych nazw firm.
  2. W kolumnie Ilosc_Oprogramowania (liczba kopii) rozwijamy kaskadę (strzałeczkę) w wierszu "Suma" i zmieniamy z "Grupuj według" na funkcję Suma (Sum).

I to wszystko! Jeśli odpalisz podgląd, system zwinie miliony wierszy w unikalne firmy, a kolumnę ilości zsumuje.

Inne popularne funkcje

Z kaskady wiersza Suma najczęściej na egzaminach przydają się:

  • Suma (Sum) - zwykłe matematyczne dodawanie zawartości
  • Policz (Count) - zliczenie "ile wierszy wpadło do danego wora/grupy". Odpowiednik liczenia sztuk, a nie objętości! (np. Zlicz ile RÓŻNYCH transakcji zrobili).
  • Maksimum / Minimum - np. Znajdź datę ich OSTATNIEGO (Maksimum) zakupu.
  • Gdzie (Where) - Jeśli użyjesz jej zamiast 'Grupuj według', powiesz Accessowi "Hej, to okienko z kryterium to nie jest żadna podgrupa która ląduje w gotowym podsumowaniu, ja chcę użyć tej kolumny tylko po to żeby ODCIĄĆ pewne rekordy ZANIM zaczniesz liczyć te grupy!". To super przydatne!