Porównywanie dwóch tabel i wyszukiwanie tylko pasujących danych

Porównywanie dwóch tabel i wyszukiwanie tylko pasujących danych

Czasem może być potrzebne wyświetlenie tylko tych rekordów z tabeli programu Access, dla których w innej tabeli programu Access istnieją odpowiadające im rekordy zawierające co najmniej jedno pole ze zgodnymi danymi. Możesz na przykład wybrać do wyświetlenia rekordy pracowników, którzy przetworzyli co najmniej jedno zlecenie, aby określić, którym pracownikom należy się premia. Możesz także wyświetlić dane kontaktowe klientów mieszkających w tym samym mieście, co określony pracownik, aby wyznaczyć odpowiednich pracowników do osobistych spotkań z klientami.

Aby porównać dwie tabele programu Access i znaleźć zgodne dane, możesz wykonać jedną z następujących czynności:

  • Utworzyć zapytanie łączące pola z odpowiednimi informacjami ze wszystkich tabel — przy użyciu istniejącej relacji lub za pomocą sprzężenia utworzonego na potrzeby zapytania. To metoda o najwyższej wydajności (szybkość przedstawienia wyników zapytania), ale niemożliwa do realizacji przy polach o niezgodnych typach danych.

  • Utworzyć zapytanie, które porównuje pola, wykorzystując jedno z nich jako kryterium dla drugiego. Użycie pola jako kryterium innego pola jest zazwyczaj wolniejsze niż sprzężenie, które eliminuje wiersze z wyników zapytania jeszcze przed odczytem tabel źródłowych. Kryteria są stosowane do wyniku zapytania dopiero po odczytaniu tabel źródłowych. Pozwala to jednak na porównanie pól o niezgodnych typach danych, co nie jest możliwe za pomocą sprzężenia.

W tym artykule omówiono sposób porównywania dwóch tabel w celu znalezienia pasujących danych oraz przedstawiono dane, których można użyć w przykładowych procedurach.

Co chcesz zrobić?

Porównywanie dwóch tabel przy użyciu sprzężeń

Porównywanie dwóch tabel przy użyciu pola jako kryterium

Porównywanie dwóch tabel przy użyciu sprzężeń

Aby porównać dwie tabele przy użyciu sprzężeń, utwórz zapytanie wybierające, które obejmie obie tabele. Jeśli nie ma jeszcze istniejącej relacji między tabelami dla pól z odpowiednimi informacjami, utwórz sprzężenie pól, które chcesz sprawdzić pod kątem dopasowań. Możesz utworzyć dowolną liczbę sprzężeń, ale każde z nich musi mieć taki sam lub zgodny typ danych.

Załóżmy, że prowadzisz badania nad jakością nauczania na uniwersytecie i chcesz sprawdzić, jak ostatnie zmiany w programie nauczania przedmiotu Matematyka wpłynęły na oceny studentów. W szczególności ważne są oceny studentów kierunku Matematyka. Masz już tabele z informacjami o kierunkach studiów studentów oraz o rejestracji na poszczególne zajęcia. Dane o stopniach są przechowywane w tabeli Rejestracja na zajęcia, a dane o kierunku — w tabeli Kierunek studiów. Aby przeanalizować zmiany w ocenach studentów matematyki po modyfikacjach programu nauczania, potrzebujesz tych rekordów z tabeli Rejestracja na zajęcia, dla których występują pasujące rekordy w tabeli kierunków.

Przygotowywanie danych przykładowych

W tym przykładzie zbudujesz zapytanie określające wpływ zmian w programie nauczania matematyki na oceny studentów matematyki. Użyjesz do tego dwóch tabel przykładowych: Kierunek studiów oraz Rejestracja na zajęcia. Dodaj te dwie tabele przykładowe, Kierunek studiów i Rejestracja na zajęcia, do bazy danych.

W programie Microsoft Office Access 2007 istnieje kilka sposobów dodawania tabel przykładowych do bazy danych. Dane można wprowadzić ręcznie, można skopiować każdą tabelę do programu arkusza kalkulacyjnego (takiego jak Microsoft Office Excel 2007), a następnie zaimportować arkusze do programu Office Access 2007 albo można wkleić dane do edytora tekstów, takiego jak Notatnik, a następnie zaimportować dane z wynikowych plików tekstowych.

W procedurach przedstawionych w tej sekcji wyjaśniono, jak wprowadzić dane ręcznie do pustego arkusza danych oraz jak skopiować tabele przykładowe do programu Excel, a następnie zaimportować je do programu Access.

Kierunek studiów

Identyfikator studenta

Rok

Kierunek główny

123456789

2005

MATEMATYKA

223334444

2005

FILOLOGIA_ANGIELSKA

987654321

2005

MATEMATYKA

135791357

2005

HISTORIA

147025836

2005

BIOLOGIA

707070707

2005

MATEMATYKA

123456789

2006

MATEMATYKA

223334444

2006

FILOLOGIA_ANGIELSKA

987654321

2006

PSYCHOLOGIA

135791357

2006

ARCHITEKTURA

147025836

2006

BIOLOGIA

707070707

2006

MATEMATYKA

Rejestracja na zajęcia

Identyfikator studenta

Rok

Semestr

Program

Nr zajęć

Ocena

123456789

2005

3

MATEMATYKA

221

5

123456789

2005

3

FILOLOGIA_ANGIELSKA

101

4

123456789

2006

1

MATEMATYKA

242

3

123456789

2006

1

MATEMATYKA

224

3

223334444

2005

3

FILOLOGIA_ANGIELSKA

112

5

223334444

2005

3

MATEMATYKA

120

3

223334444

2006

1

FILOZOFIA

110

5

223334444

2006

1

FILOLOGIA_ANGIELSKA

201

4

987654321

2005

3

MATEMATYKA

120

5

987654321

2005

3

PSYCHOLOGIA

101

5

987654321

2006

1

MATEMATYKA

221

4

987654321

2006

1

MATEMATYKA

242

3

135791357

2005

3

HISTORIA

102

5

135791357

2005

3

ARCHITEKTURA

112

5

135791357

2006

1

MATEMATYKA

120

4

135791357

2006

1

MATEMATYKA

141

3

147025836

2005

3

BIOLOGIA

113

4

147025836

2005

3

CHEMIA

113

4

147025836

2006

1

MATEMATYKA

120

2

147025836

2006

1

STATYSTYKA

114

4

707070707

2005

3

MATEMATYKA

221

4

707070707

2005

3

STATYSTYKA

114

5

707070707

2006

1

MATEMATYKA

242

2

707070707

2006

1

MATEMATYKA

224

3

Jeśli do wprowadzania danych przykładowych chcesz używać programu arkusza kalkulacyjnego, możesz pominąć następną sekcję.

Ręczne wprowadzanie danych przykładowych

  1. Otwórz nową lub istniejącą bazę danych.

  2. Na karcie Tworzenie w grupie Tabele kliknij pozycję Tabela.

    Obraz wstążki programu Access

    W programie Access do bazy danych zostanie dodana nowa pusta tabela.

    Uwaga: Nie trzeba wykonywać tego kroku w przypadku otwierania nowej pustej bazy danych, ale jego wykonanie będzie konieczne podczas dodawania tabeli do istniejącej bazy danych.

  3. Kliknij dwukrotnie pierwszą komórkę w wierszu nagłówka i wpisz nazwę pola z tabeli przykładowej.

    Domyślnie program Access oznacza puste pola w wierszu nagłówka tekstem Dodaj nowe pole, na przykład:

    Nowe pole w arkuszu danych

  4. Przejdź do następnej pustej komórki nagłówka za pomocą klawiszy strzałek i wpisz nazwę drugiego pola (możesz też kliknąć dwukrotnie nową komórkę). Powtórz ten krok dla wszystkich nazw pól.

  5. Wprowadź dane w tabeli przykładowej.

    Podczas wprowadzania danych program Access ustala typ danych każdego pola. Każde pole ma określony typ danych, taki jak Liczba, Tekst lub Data/Godzina. Ustawienie typów danych pomaga zapewnić precyzyjne wprowadzanie danych, a także pomaga zapobiegać błędom, takim jak użycie w obliczeniach numeru telefonu. W przypadku tabel przykładowych należy pozwolić programowi Access ustalić typ danych, ale należy także zawsze sprawdzić, czy został wybrany prawidłowy typ.

  6. Po zakończeniu wprowadzania danych kliknij przycisk Zapisz lub naciśnij klawisze CTRL+S.

    Zostanie wyświetlone okno dialogowe Zapisywanie jako.

  7. W polu Nazwa tabeli wpisz nazwę tabeli przykładowej, a następnie kliknij przycisk OK.

    Należy użyć nazw tabel przykładowych (na przykład Kierunek studiów), ponieważ te nazwy zostaną później użyte w zapytaniach przedstawionych w sekcji tego artykułu poświęconej procedurom.

Po zakończeniu wprowadzania danych przykładowych możesz przystąpić do porównywania dwóch tabel.

Jeśli nie chcesz dowiedzieć się, jak utworzyć arkusz oparty na danych przykładowych z tabel z poprzedniej sekcji, możesz pominąć następną sekcję (Tworzenie arkuszy przykładowych).

Tworzenie arkuszy przykładowych

  1. Uruchom program arkusza kalkulacyjnego i utwórz nowy pusty plik. Jeśli używasz programu Excel, podczas jego uruchamiania domyślnie tworzony jest pusty skoroszyt.

  2. Skopiuj pierwszą tabelę przykładową z poprzedniej sekcji i wklej ją do pierwszego arkusza, rozpoczynając od pierwszej komórki. Pamiętaj o skopiowaniu wiersza nagłówka, który zawiera nazwy pól tabeli przykładowej.

  3. Nazwij arkusz tak samo jak tabelę, stosując metodę odpowiednią dla używanego programu arkusza kalkulacyjnego. Na przykład po wklejeniu danych przykładowych z tabeli Rejestracja na zajęcia nazwij arkusz Rejestracja na zajęcia.

  4. Powtórz kroki 2 i 3, kopiując drugą tabelę przykładową do pustego arkusza i zmieniając odpowiednio jego nazwę.

    Uwaga: Może być konieczne dodanie arkuszy do pliku arkusza kalkulacyjnego. Aby uzyskać informacje na temat dodawania arkuszy do pliku arkusza kalkulacyjnego, zapoznaj się z pomocą programu arkusza kalkulacyjnego.

  5. Zapisz skoroszyt w dogodnej lokalizacji na komputerze lub w sieci i przejdź do następnej procedury.

Tworzenie tabel bazy danych z arkuszy

  1. W nowej lub istniejącej bazie danych:

    Na karcie Dane zewnętrzne w grupie Importowanie kliknij pozycję Excel.

    Obraz wstążki programu Access

    — lub —

    Kliknij pozycję Więcej, a następnie wybierz z listy program arkusza kalkulacyjnego.

    Zostanie wyświetlone okno dialogowe Pobieranie danych zewnętrznych — Arkusz kalkulacyjny programu <nazwa programu>.

  2. Kliknij przycisk Przeglądaj, znajdź i otwórz plik arkusza kalkulacyjnego utworzony w poprzednich krokach i kliknij przycisk OK.

    Zostanie uruchomiony Kreator importu arkuszy.

    Domyślnie kreator wybierze pierwszy arkusz w skoroszycie (o nazwie Kierunek studiów — jeśli wykonano kroki z poprzedniej sekcji). Dane z tego arkusza zostaną wyświetlone w dolnej części strony kreatora.

  3. Kliknij przycisk Dalej.

  4. Na następnej stronie kreatora zaznacz pole wyboru Pierwszy wiersz zawiera nagłówki kolumn i kliknij przycisk Dalej.

  5. Na następnej stronie możesz użyć pól tekstowych i list w obszarze Opcje pola, aby zmienić nazwy pól i typy danych lub pominąć określone pola podczas operacji importowania. W tym przykładzie nie trzeba niczego zmieniać. Kliknij przycisk Dalej.

  6. Na następnej stronie wybierz opcję Bez klucza podstawowego, a następnie kliknij przycisk Dalej.

  7. Domyślnie program Access zastosuje nazwę arkusza do nowej tabeli. Zaakceptuj tę nazwę w oknie Importuj do tabeli i kliknij przycisk Zakończ.

  8. Na stronie Zapisz kroki importu kliknij przycisk Zamknij. Zakończy to pracę kreatora.

  9. Powtarzaj kroki od 1 do 7, aż utworzysz tabelę dla każdego arkusza w pliku arkuszy kalkulacyjnych.

Porównywanie tabel przykładowych i wyszukiwanie zgodnych rekordów przy użyciu sprzężeń

Możesz teraz przystąpić do porównywania tabel Rejestracja na zajęcia i Kierunek studiów. Ponieważ między tymi dwiema tabelami nie zostały zdefiniowane żadne relacje, musisz utworzyć sprzężenie między odpowiednimi polami w zapytaniu. Tabele te mają wspólne więcej niż jedno pole. Musisz utworzyć sprzężenie dla każdej pary wspólnych pól: Identyfikator studenta, Rok i Program (tabela Rejestracja na zajęcia) oraz Kierunek główny (tabela Kierunek studiów). W tym przykładzie ważni są tylko studenci matematyki. Dlatego zostanie także użyte kryterium pola, które pozwoli ograniczyć wyniki zapytania.

  1. Otwórz bazę danych, w której zapisano przykładowe tabele.

  2. Na karcie Tworzenie kliknij przycisk Projekt kwerendy.

  3. W oknie dialogowym Pokazywanie tabeli kliknij dwukrotnie tabelę z rekordami, które chcesz wyświetlić — w tym przykładzie Rejestracja na zajęcia — i kliknij dwukrotnie tabelę, z którą chcesz ją porównać — w tym przykładzie Kierunek studiów.

  4. Zamknij okno dialogowe Pokazywanie tabeli.

  5. Przeciągnij pole Identyfikator studenta z tabeli Rejestracja na zajęcia do pola Identyfikator studenta w tabeli Kierunek studiów. Między dwiema tabelami w siatce projektu pojawi się linia oznaczająca utworzone sprzężenie. Kliknij dwukrotnie tę linię, aby otworzyć okno dialogowe Właściwości sprzężenia.

  6. Zapoznaj się z trzema opcjami dostępnymi w oknie dialogowym Właściwości sprzężenia. Domyślnie jest wybrana opcja 1. W niektórych przypadkach konieczne jest dostosowanie właściwości sprzężenia tak, aby uwzględnić dodatkowe wiersze z jednej tabeli, Ponieważ chcesz znaleźć tylko pasujące dane, pozostaw wybraną opcję 1. Zamknij okno dialogowe Właściwości sprzężenia, klikając przycisk Anuluj.

  7. Musisz utworzyć jeszcze dwa sprzężenia. Utwórz je, przeciągając pole Rok z tabeli Rejestracja na zajęcia do pola Rok w tabeli Kierunek studiów oraz pole Program z tabeli Rejestracja na zajęcia do pola Kierunek główny w tabeli Kierunek studiów.

  8. W tabeli Rejestracja na zajęcia kliknij dwukrotnie gwiazdkę (*), aby dodać wszystkie pola tabeli do siatki projektu zapytania.

    Uwaga: W przypadku dodania wszystkich pól przy użyciu gwiazdki w siatce projektu jest wyświetlana tylko jedna kolumna. Wyświetlona kolumna ma taką nazwę jak tabela, zakończoną kropką (.) i gwiazdką (*). W tym przykładzie będzie to kolumna o nazwie Rejestracja na zajęcia.*.

  9. Dodaj do siatki pole Kierunek główny z tabeli Kierunek studiów, klikając je dwukrotnie.

  10. Wyczyść pole wyboru w wierszu Pokaż kolumny Kierunek główny w siatce projektu zapytania.

  11. W wierszu Kryteria kolumny Kierunek główny wpisz ciąg MATEMATYKA.

  12. Na karcie Projektowanie w grupie Wyniki kliknij przycisk Uruchom.

    Zapytanie zostanie uruchomione i po chwili pojawią się oceny studentów matematyki.

Początek strony

Porównywanie dwóch tabel przy użyciu pola jako kryterium

Czasami może być wymagane porównanie tabel na podstawie pól zawierających zgodne dane, ale o innym typie. Na przykład pole w jednej tabeli zawiera dane typu Liczba, a ma zostać porównane z polem w innej tabeli zawierającym dane typu Tekst. Sytuacja, w której pola zawierają podobne dane, ale są różnych typów, może być na przykład wynikiem zapisania liczb w postaci tekstu — celowo lub z innego powodu, na przykład importu danych z innego programu. Ponieważ nie można utworzyć sprzężenia pól o różnych typach danych, do ich porównania należy użyć innej metody. Dwa pola o różnych typach danych można porównać, używając jednego z nich jako kryterium dla drugiego.

Załóżmy, że prowadzisz badania nad jakością nauczania na uniwersytecie i chcesz sprawdzić, jak ostatnie zmiany w programie nauczania przedmiotu Matematyka wpłynęły na oceny studentów. W szczególności ważne są oceny studentów kierunku Matematyka. Masz już tabelę Kierunek studiów oraz tabelę Rejestracja na zajęcia. Dane o stopniach są przechowywane w tabeli Rejestracja na zajęcia, a dane o kierunku — w tabeli Kierunek studiów. Aby przeanalizować zmiany w ocenach studentów matematyki, potrzebujesz rekordów z tabeli Rejestracja na zajęcia, dla których występują zgodne rekordy w tabeli Kierunek studiów. Jednak porównywane pola w obu tabelach zawierają różne typy danych.

Aby porównać dwie tabele przy użyciu pola jako kryterium, utwórz zapytanie wybierające, które obejmie obie tabele. Uwzględnij pola, które mają być wyświetlone, oraz pole odpowiadające temu polu, które ma być użyte jako kryterium. Następnie utwórz kryterium pozwalające porównać te tabele. Możesz utworzyć dowolną liczbę kryteriów do porównywania pól.

Do zilustrowania tej metody zostaną użyte tabele przykładowe z poprzedniej sekcji, ale z pewnymi zmianami — typ pola Identyfikator studenta z tabeli Kierunek studiów zostanie zmieniony z Liczba na Tekst. Ponieważ nie można utworzyć sprzężenia dwóch pól o różnych typach danych, musisz porównać dwa pola Identyfikator studenta, używając jednego z nich jako kryterium drugiego.

Zmienianie typu danych pola Identyfikator studenta w tabeli Kierunek studiów

  1. Otwórz bazę danych, w której zapisano przykładowe tabele.

  2. W okienku nawigacji kliknij prawym przyciskiem myszy tabelę Kierunek studiów, a następnie w menu skrótów kliknij polecenie Widok projektu.

    Tabela Kierunek studiów zostanie otwarta w widoku projektu.

  3. W kolumnie Typ danych zmień ustawienie dla pola Identyfikator studenta z Liczba na Tekst.

  4. Zamknij tabelę Kierunek studiów. Gdy zostanie wyświetlony monit o zapisanie zmian, kliknij przycisk Tak.

Porównywanie tabel przykładowych i wyszukiwanie zgodnych rekordów przy użyciu kryterium pola

Poniższa procedura przedstawia sposób porównywania dwóch pól Identyfikator studenta przy użyciu pola z tabeli Rejestracja na zajęcia jako kryterium dla pola z tabeli Kierunek studiów. Za pomocą słowa kluczowego Like możesz porównywać nawet pola o różnych typach danych.

  1. Na karcie Tworzenie w grupie Inne kliknij polecenie Projekt zapytania.

  2. W oknie dialogowym Pokazywanie tabeli kliknij dwukrotnie tabelę Rejestracja na zajęcia i tabelę Kierunek studiów.

  3. Zamknij okno dialogowe Pokazywanie tabeli.

  4. Przeciągnij pole Rok z tabeli Rejestracja na zajęcia do pola Rok w tabeli Kierunek studiów oraz pole Program z tabeli Rejestracja na zajęcia do pola Kierunek główny w tabeli Kierunek studiów. Ponieważ te pola mają takie same typy danych, można je porównać przy użyciu sprzężeń. Sprzężenia są zalecaną metodą porównywania pól, które mają ten sam typ danych.

  5. Kliknij dwukrotnie gwiazdkę (*) w tabeli Rejestracja na zajęcia, aby dodać wszystkie pola tabeli do siatki projektu zapytania.

    Uwaga: W przypadku dodania wszystkich pól przy użyciu gwiazdki w siatce projektu jest wyświetlana tylko jedna kolumna. Wyświetlona kolumna ma taką nazwę jak tabela, zakończoną kropką (.) i gwiazdką (*). W tym przykładzie będzie to kolumna o nazwie Rejestracja na zajęcia.*.

  6. Dodaj do siatki pole Identyfikator studenta z tabeli Kierunek studiów, klikając je dwukrotnie.

  7. Wyczyść pole wyboru w wierszu Pokaż kolumny Identyfikator studenta w siatce projektu. W wierszu Kryteria kolumny Identyfikator studenta wpisz Like [Rejestracja na zajęcia].[Identyfikator studenta].

  8. Dodaj do siatki pole Kierunek główny z tabeli Kierunek studiów, klikając je dwukrotnie.

  9. Wyczyść pole wyboru w wierszu Pokaż kolumny Kierunek główny w siatce projektu. W wierszu Kryteria wpisz MATEMATYKA.

  10. Na karcie Projektowanie w grupie Wyniki kliknij przycisk Uruchom.

    Zapytanie zostanie uruchomione i po chwili pojawią się oceny studentów matematyki.

Początek strony

Rozwijaj umiejętności związane z pakietem Office
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×