Ciekawym przykładem relacyjnej bazy danych jest Access. Umożliwia on wyklikanie wielu złożonych zapytań SQLowych w szybkim tempie. Najlepszym przykładem jest jedno z zadań jakie daję moim uczniom. Jest to trochę bardziej skomplikowane zapytanie i rozwiązanie jego zajmuje ok 20-30 min. W Accessie osobie nie znającej SQLa zajęło to ok 3 min. Niestety sprawia on też sporo problemów, ale o tym innym razem 🙂

Odpowiednikiem zapytań SQLowych są tu kwerendy. W języku SQL mamy różne rodzaje zapytań (SELECT, INSERT, CREATE TABLE itd.) i część z nich ma swoje odpowiedniki w postaci właśnie kwerend:

 

Kwerenda wybierająca:

wybierająca

Jest to nic innego jak wyciąganie danych z tabel. Mamy tu kilka możliwości, aby wyświetlić interesujące nas dane.

Łączenie tabel osiągniemy poprzez przeciągnięcie pola z jednej tabelki na odpowiadające jej pole w drugiej tabeli.

łączenie tabel

Kolejną możliwością jest filtrowanie danych. Jeśli chcemy wybrać asortyment o cenie wyższej niż 20zł, wystarczy przeciągnąć pole Cena do siatki na dole i w wierszu kryteria wpisać >20. Można również wybrać które kolumny mają wyć wyświetlane w wyniku zaznaczając fajkę w wierszu pokaż. W poniższym przykładzie kolumna w której podane są kryteria filtrowania nie będzie wyświetlana.

Filtrowanie

Można również grupować dane. W zakładce Projektowanie klikając przycisk sumy do naszej siatki zostanie dodany wiersz Suma. W nim ustawiamy jaką akcję na danej kolumnie chcemy wykonać. Do wyboru mamy m.in.:

Grupuj według – dane w kolumnie będą połączone w grupy. Jeśli będziemy grupowali wg kolumny  TypyAsortymentu, wtedy dla każdego typu będzie tylko jeden wiersz, a pozostałe dane będziemy mogli agregować.

Funkcje agregujące:

Policz – zliczanie ilości wierszy w danej grupie. Jeśli wybrane pole będzie miało wartość null wtedy nie zostanie policzone.

Suma – sumowanie wartości w wybranej kolumnie. Różnica między Sumą a Policz: jeśli mamy dwa wiersze, w których będą liczby odpowiednio 2 i 3, wtedy policz zwróci wynik 2 (mamy dwa wiersze), a suma 5 (sumujemy wartość wierszy).

Średnia – wyliczana jest średnia arytmetyczna z danej grupy. Wykorzystać można do wyliczenia np. średniej sprzedaży danego produktu albo średniej ocen z przedmiotów.

Minimum – znajdowane jest minimum w danej grupie. Ten agregat można wykorzystać np. do znalezienia najtańszego produktu z danej grupy produktów.

Maksimum – znajdowane jest maksimum w danej grupie. Ta funkcja agregująca może nam pomóc w znalezieniu najlepiej zarabiającego pracownika.

grupowanie

 

Kwerenda tworząca tabelę:

Dzięki tej kwerendzie możemy skopiować dane z innej tabeli i utworzyć dla nich nową. Możemy w niej wykorzystywać opcje z kwerendy wybierającej. Czyli za jej pomocą zamiast wyświetlić danych, to zapisujemy je w postaci nowej tabeli.

 

Kwerenda dołączająca:

Tu również możemy wykorzystać możliwości kwerendy wybierającej, aby przetworzyć dane. Kwerendę dołączającą od wybierającej różni to, że w przypadku tej drugiej dostajemy wynik na ekranie, a ta pierwsza wybrane dane dokleja do istniejącej tabeli.

 

Kwerenda aktualizująca:

Pozwala nam ona zaktualizować dane. Np. gdy chcemy dać wszystkim pracownikom podwyżkę zamiast ręcznie wszystko przeliczać, wystarczy użyć tej kwerendy.

 

Kwerenda usuwająca:

Jak sama nazwa wskazuje służy ona do usuwania danych. Należy jednak uważać, aby nie skasować ważnych informacji. Dużo lepszym rozwiązaniem od usuwania danych jest utworzenie dodatkowej kolumny w tabeli i trzymanie w niej statusu danego wiersza (np. usunięty/nieusunięty). Dzięki temu w przypadku pomyłki nie stracimy danych i jeśli będziemy chcieli w przyszłości do nich wrócić będą one nadal w tabeli. Odbywa się to kosztem miejsca na dysku, ale lepiej kupić większy dysk niż stracić dane 😉 Przykład z opisem wykonania znajdziesz we wpisie o iloczynie zbiorów.

Dołącz do newslettera już dziś!
Zero spamu - tylko wartościowe treści!
Musisz już lecieć?
Zostaw swój adres e-mail i dołącz do BEZPŁATNYCH WEBINARÓW dotyczących SQLa!
  • „Jak uczyć się SQLa?” – 4 października
  • „SQL dla testerów” – 12 października