27
25/08/2001 1 MS Access 2000 Piotr Górczyński Kwerendy

MS Access 2000

  • Upload
    howell

  • View
    58

  • Download
    0

Embed Size (px)

DESCRIPTION

MS Access 2000. Piotr Górczyński. Kwerendy. Spis treści. Wstęp Tworzenie kwerendy Edycja projektu kwerendy Otwieranie kwerendy Definiowanie warunków Grupowanie Funkcje agregujące Zagnieżdżanie kwerend Kwerenda z parametrem. Wstęp. - PowerPoint PPT Presentation

Citation preview

Page 1: MS Access 2000

25/08/2001 1

MS Access 2000

Piotr Górczyński

Kwerendy

Page 2: MS Access 2000

25/08/2001 2

Spis treści

WstępTworzenie kwerendyEdycja projektu kwerendyOtwieranie kwerendyDefiniowanie warunkówGrupowanieFunkcje agregująceZagnieżdżanie kwerendKwerenda z parametrem

Page 3: MS Access 2000

25/08/2001 3

Wstęp

Kwerendy służą do wybierania z tabel informacji spełniających określone warunki

Kwerendy mogą wybierać dane bezpośrednio z tabel lub z innych kwerend

Każda kwerenda ma nazwę

Page 4: MS Access 2000

25/08/2001 4

Tworzenie kwerend - krok 1 z 6

W oknie projektu bazy danych w widoku obiektów Kwerendy (Query) pokazane są wszystkie kwerendy w bazie danych. Aby utworzyć nową klikamy dwukrotnie Utwórz kwerendę w widoku projektu (Create query in Design view)

Page 5: MS Access 2000

25/08/2001 5

Tworzenie kwerend - krok 2 z 6

Automatycznie otwiera się dodatkowe okno Pokaż tabelę (Show Table), w którym wybieramy tabele/kwerendy, z którego chcemy wybrać informacje. Po zaznaczeniu tabeli/kwerendy naciskamy guzik Dodaj (Add) - spowoduje to pojawienie się tabeli/kwerendy w oknie w tle. Zamykamy okno.

Jeśli pomylimy się lub chcemy usunąć to, co dodaliśmy, można to zrobić później.

Tabele/Kwerendy pojawiają się wraz z relacjami zdefiniowanymi w oknie relacji tabel.

Page 6: MS Access 2000

25/08/2001 6

Dodawanie tabel/kwerend - krok 3 z 6

1. Aby zobaczyć tabelę/kwerendę w oknie relacji należy ją dodać. Robimy to wybierając z menu Kwerendy (Query) polecenie Dodaj tabelę (Add table) lub klikając na pasku narzędzi guzik

2. W oknie Pokaż tabelę (Show table) wybieramy tabelę/kwerendę i naciskamy guzik Dodaj (Add)

Page 7: MS Access 2000

25/08/2001 7

Usuwanie tabel/kwerend - krok 4 z 6

Aby usunąć tabelę/kwerendę z okna relacji:

1. Wynieramy ją klikając na pasek tytułowy (w środku tabeli jedno z pól zostanie zaznaczone).

2. Naciskamy klawisz Delete.

Page 8: MS Access 2000

25/08/2001 8

Dodawanie/usuwanie pól - krok 5 z 6

Aby dodać pole należy:Dwukrotnie kliknąć pole w tabeli/kwerendzie

w oknie relacji - pole pojawi się w oknie selekcji na dole

Przeciągnąć pole z tabeli/kwerendy w oknie relacji do okna selekcji na dole

Wpisać nazwę pola w oknie selekcji Aby usunąć pole należy:

Skasować (wyczyścić) nazwę polaZaznaczyć kolumnę i nacisnąć klawisz Delete

Page 9: MS Access 2000

25/08/2001 9

Zapisywanie kwerendy - krok 6 z 6

1. Po wprowadzeniu wszystkich pól wybieramy z menu Plik (File) polecenie Zapisz (Save) lub naciskamy na pasku narzędzi guzik

2. W oknie Zapisz jako (Save As) wpisujemy nazwę tabeli (proponowana jest Table1)

3. Naciskamy guzik OK

Page 10: MS Access 2000

25/08/2001 10

Edycja projektu kwerendy

1. Klikamy kwerendę, której budowę chcemy zmienić

2. Klikamy guzik Projekt (Design)

3. W następnych krokach postępujemy tak samo ja podczas tworzenia kwerendy.

Page 11: MS Access 2000

25/08/2001 11

Otwieranie kwerendy

W oknie projektu bazy danych w widoku obiektów Kwerendy (Query) pokazane są wszystkie kwerendy w bazie danych. Aby otworzyć kwerendę, należy ją zaznaczyć i nacisnąć guzik Otwórz (Open) lub kliknąć kwerendę dwukrotnie myszą.

Page 12: MS Access 2000

25/08/2001 12

Definiowanie warunków

Kryteria wpisujemy w wierszu Kryteria (Criteria)

W kryteriach możemy używać: operatory porównania: >,<,=,<=,>= sprawdzania istnienia wartości w

polu: IS NULL (jest puste) , IS NOT NULL (nie jest puste)

Znaku * zastępującego dowolny ciąg znaków

Przykład po prawej: warunek >100 powoduje, że zostaną wybrane tylko rekordy, których wartość w polu Ilosc jest większa niż 100

Page 13: MS Access 2000

25/08/2001 13

Przykłady definiowania warunków

Warunek Opis działania

>100 Rekordy, których pole ma wartość większą niż 100

Is Not Null Rekordy, których pole nie jest puste

"Ala" Rekordy, których pole jest równe "Ala"

"Kow*" Rekordy, których pole jest równe "Kow" i jakikolwiek ciąg znaków np: "Kowalski", "Kowalewski", "Kowal"

Page 14: MS Access 2000

25/08/2001 14

Warunek logiczny I (AND)

Warunki wpisane w tym samym wierszu muszą być spełnione wszystkie naraz, czyli łączy je operator logiczny I (AND)

W przykładzie po prawej zapisano warunek, że:pole Ilosc ma być większe niż 100Ipole IDTowaru ma być równe "DELX"

Page 15: MS Access 2000

25/08/2001 15

Warunek logiczny LUB (OR)

Warunki wpisane w różnych wierszach muszą być spełnione alternatywnie, czyli łączy je operator logiczny LUB (OR)

W przykładzie po prawej zapisano warunek, że:pole Ilosc ma być większe niż 1000LUBpole Ilosc ma być mniejsze niż 20

Page 16: MS Access 2000

25/08/2001 16

Warunek logiczny I (AND) dla jednego pola

Warunek logiczny I (AND) dla jednego pola można zapisać:

W oddzielnych kolumnach dla tego samego pola używając prostych operatorów:

>20<30

W jednej kolumnie używając wyrażeń z operatorami logicznymi

>20 AND <30 W przykładzie powyżej obie definicje są

równoważne

Page 17: MS Access 2000

25/08/2001 17

Grupowanie

Grupowanie (inaczej agregowanie) dotyczy zawsze pewnych wybranych pól i polega na pogrupowaniu rekordów o takich samych wartościach wybranych pól

Kwerenda w której jest grupowanie mogą pojawić się tylko:

pola według których odbywa się grupowanie

funkcje agregujące Przykład: dane w tabeli zostały w

kwerendzie pogrupowane według pola Kraj (GROUP BY Kraj). Jak widać wartości puste (NULL) też są uznawane za oddzielną grupę i znajdują się w wyniku kwerendy. Ostatecznie otrzymujemy wszystkie unikalne wartości pola Kraj, które znajdują się w tabeli.

Kraj

Czeska RepublikCzeska RepublikLitwaLitwaLitwaLitwaNiemcyNiemcyNiemcyNiemcyNiemcyNiemcyNiemcyPolskaPolskaPolska

Kraj

Czeska RepublikLitwaNiemcyPolska

GROUP BY Kraj

Page 18: MS Access 2000

25/08/2001 18

Przykład

Przykład: dane w tabeli zostały pogrupowane według pola Kraj i WojewodztwoRegion (GROUP BY Kraj, WojewodztwoRegion). W wyniku kwerendy otrzymujemy wszystkie unikalne kombinacje wartości pola Kraj i WojewodztwoRegion, które znajdują się w tabeli.

Wniosek: kwerenda w której jest grupowanie według wszystkich pól tabeli spowoduje wybranie wszystkich unikalnych kombinacji wartości tabeli, czyli – jeśli tabela ma klucz – zostaną wybrane wszystkie rekordy z tabeli.

Kraj WojewodztwoRegionLitwa WilnoNiemcy Detmold-LippeNiemcy BayernLitwa WilnoLitwa WilnoLitwa WilnoNiemcy BayernNiemcy SachsenCzeska Republik OstravaNiemcy NiedersachsenNiemcy NiedersachsenNiemcy BayernCzeska Republik Brno

Kraj WojewodztwoRegionCzeska Republik BrnoCzeska Republik OstravaLitwa WilnoNiemcy BayernNiemcy Detmold-LippeNiemcy NiedersachsenNiemcy Sachsen

GROUP BY Kraj,WojewodztwoRegion

Page 19: MS Access 2000

25/08/2001 19

Tworzenie kwerendy z grupowaniem

1. Tworzymy kwerendę i dodajemy pola według których chcemy grupować

2. Naciskamy na pasku narzędzi guzik lub wybieramy z menu Widok (View) polecenie Podsumowanie (Totals)

3. Na dole okna kwerendy pojawia się nowy wiersz Podsumowanie (Totals), w którym dla każdego wybranego pola pojawia się domyślnie wartość Group By.

Aby wyłączyć grupowanie trzeba wykonać punkt 2.

Page 20: MS Access 2000

25/08/2001 20

Funkcje agregujące

Funkcje agregujące są to funkcje, których argumentami są wartości jednego wybranego pola ze wszystkich lub z grupy rekordów.

Notacja: nazwa_funkcji(nazwa_pola). Przykład: MIN(Cena) Funkcje agregujące mogą być używane razem z grupowaniem.

Ich argumenty są wtedy ograniczone do rekordów z jednej grupy.

SugerowanaCena20,75 zł19,00 zł18,00 zł27,75 zł34,00 zł23,00 zł32,25 zł15,75 zł21,00 zł33,25 zł17,50 zł27,75 zł18,25 zł16,25 zł35,00 zł

MIN(SugerowanaCena)MinOfSugerowanaCena

15,75 zł

Page 21: MS Access 2000

25/08/2001 21

Przykład

Przykład: dane w tabeli zostały pogrupowane według pola VAT (GROUP BY Vat) i funkcja agregująca MIN dla pola SugerowanaCena ograniczona jest do rekordów z każdej grupy oddzielnie.

VAT SugerowanaCena7,00% 20,75 zł7,00% 19,00 zł7,00% 18,00 zł7,00% 27,75 zł7,00% 34,00 zł7,00% 23,00 zł7,00% 32,25 zł7,00% 15,75 zł7,00% 21,00 zł

22,00% 33,25 zł22,00% 17,50 zł22,00% 27,75 zł22,00% 18,25 zł22,00% 16,25 zł22,00% 35,00 zł

VAT MinOfSugerowanaCena7,00% 15,75 zł

22,00% 16,25 zł

GROUP BY VATMIN(SugerowanaCena)

Page 22: MS Access 2000

25/08/2001 22

Wybrane funkcje agregujące

Nazwa Opis działania

SUM Suma

COUNT Policz

MIN Minimum

MAX Maksimum

WHERE Pozwala zdefiniować kryteria wyboru rekordów

AVG Średnia

STDEV Odchylenie standardowe

Page 23: MS Access 2000

25/08/2001 23

Tworzenie kwerendy z funkcjami agregującymi

1. Tworzymy kwerendę i dodajemy pola, dla których chcemy użyć funkcji agregujących

2. Naciskamy na pasku narzędzi guzik lub wybieramy z menu Widok (View) polecenie Podsumowanie (Totals)

3. Na dole okna kwerendy pojawia się nowy wiersz Podsumowanie (Totals), w którym dla każdego wybranego pola pojawia się domyślnie wartość Group By.

4. Zmieniamy wartość tego pola klikając na nie i wybierając z listy rozwijanej nazwę funkcji, której chcemy użyć.

Page 24: MS Access 2000

25/08/2001 24

Przykład

Przykład: funkcja COUNT(SugerowanaCena) zwraca ilość niepustych pól SugerowanaCena (13) ze wszystkich rekordów (15)

COUNT(SugerowanaCena)

SugerowanaCena

18,00 zł27,75 zł34,00 zł23,00 zł32,25 zł15,75 zł21,00 zł33,25 zł17,50 zł27,75 zł18,25 zł16,25 zł35,00 zł

CountOfSugerowanaCena13

Page 25: MS Access 2000

25/08/2001 25

Zagnieżdżanie kwerend

Zagnieżdżona kwerenda jest to kwerenda, która jako źródło rekordów używa kwerendy.

Przykład: kwerenda qryKraje zwraca kraje. Kwerenda qryPoliczKraje zwraca za pomocą funkcji COUNT liczbę rekordów z kwerendy qryKraje o niepustym polu Kraj.

Page 26: MS Access 2000

25/08/2001 26

Kwerenda z parametrem

Załóżmy, że istnieje potrzeba stworzenia kwerendy, która powinna zwracać rekordy spełniające jakiś warunek, który musi być formułowany za każdym razem. Możemy powiedzieć, że warunek ten będzie zdefiniowany za pomocą parametru, który musi być podany przez użytkownika.

Przykładem takiej kwerendy jest kwerenda zwracąca wszystkie dane z faktury o konkretnym numerze. Zamiast zmieniać za każdym razem kryteria wyboru faktury, lepiej zdefiniować parametr odpowiadający numerowi faktury, którego podania komputer będzie za żądał za każdym uruchomieniem kwerendy. Jeżeli stworzymy raport w formie wydruku faktury oparty na tej kwerendzie, to przy każdym uruchomieniu raportu komputer też będzie żądał podania numeru faktury. Dzieki temu możemy w prosty sposób stworzyć funkcjonalność do drukowania faktur.

Page 27: MS Access 2000

25/08/2001 27

Tworzenie kwerendy z parametrem

Jeżeli w definicji kwerendy umieścimy jakikolwiek ciąg znaków w nawiasach kwadratowych [], którego komputer nie może powiązać z istniejącymi elementami zapytania, to będzie traktował ten ciąg znaków jako parametr i żądał jego podania przy każdym uruchomieniu kwarendy

W przykładzie zdefiniowano parametr [Podaj numer faktury:] jako kryterium dla pola NumerFaktury z tabeli Faktura. Przy uruchomieniu kwerendy komputer pokazuje okno dialogowe, w którym żąda wprowadzenia wartości dla tego parametru. Wynikiem zapytania będą dane dotyczące faktury o numerze podanym w tym oknie.