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.
-
Utwórz zapytanie, które porównuje pola, używając jednego pola jako kryterium drugiego. Używanie pola jako kryterium dla innego pola jest zwykle wolniejsze niż użycie sprzężeń, ponieważ sprzężenia eliminują wiersze z wyników zapytania, zanim tabele źródłowe zostaną odczytane, natomiast kryteria są stosowane do wyników zapytania po odczytaniu tabel źródłowych. Można jednak użyć pola jako kryterium pola w celu porównania pól o różnych typach danych, co nie jest możliwe przy użyciu sprzężeń.
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ń
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.
Access udostępnia kilka sposobów dodawania tych tabel przykładowych do bazy danych. Możesz wprowadzić dane ręcznie, skopiować każdą tabelę do programu arkusza kalkulacyjnego, a następnie zaimportować arkusze do Access lub 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 |
A |
123456789 |
2005 |
3 |
FILOLOGIA_ANGIELSKA |
101 |
B |
123456789 |
2006 |
1 |
MATEMATYKA |
242 |
C |
123456789 |
2006 |
1 |
MATEMATYKA |
224 |
C |
223334444 |
2005 |
3 |
FILOLOGIA_ANGIELSKA |
112 |
A |
223334444 |
2005 |
3 |
MATEMATYKA |
120 |
C |
223334444 |
2006 |
1 |
FILOZOFIA |
110 |
A |
223334444 |
2006 |
1 |
FILOLOGIA_ANGIELSKA |
201 |
B |
987654321 |
2005 |
3 |
MATEMATYKA |
120 |
A |
987654321 |
2005 |
3 |
PSYCHOLOGIA |
101 |
A |
987654321 |
2006 |
1 |
MATEMATYKA |
221 |
B |
987654321 |
2006 |
1 |
MATEMATYKA |
242 |
C |
135791357 |
2005 |
3 |
HISTORIA |
102 |
A |
135791357 |
2005 |
3 |
ARCHITEKTURA |
112 |
A |
135791357 |
2006 |
1 |
MATEMATYKA |
120 |
B |
135791357 |
2006 |
1 |
MATEMATYKA |
141 |
C |
147025836 |
2005 |
3 |
BIOLOGIA |
113 |
B |
147025836 |
2005 |
3 |
CHEMIA |
113 |
B |
147025836 |
2006 |
1 |
MATEMATYKA |
120 |
D |
147025836 |
2006 |
1 |
STATYSTYKA |
114 |
B |
707070707 |
2005 |
3 |
MATEMATYKA |
221 |
B |
707070707 |
2005 |
3 |
STATYSTYKA |
114 |
A |
707070707 |
2006 |
1 |
MATEMATYKA |
242 |
D |
707070707 |
2006 |
1 |
MATEMATYKA |
224 |
C |
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
-
Otwórz nową lub istniejącą bazę danych.
-
Na karcie Tworzenie w grupie Tabele kliknij pozycję Tabela.
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.
-
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:
-
Za pomocą klawiszy strzałek przejdź do następnej pustej komórki nagłówka, a następnie wpisz nazwę drugiego pola. (Możesz również kliknąć dwukrotnie nową komórkę). Powtórz ten krok dla każdej nazwy pola.
-
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.
-
Po zakończeniu wprowadzania danych kliknij przycisk Zapisz lub naciśnij klawisze CTRL+S.
Zostanie wyświetlone okno dialogowe Zapisywanie jako.
-
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
-
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.
-
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.
-
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.
-
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.
-
Zapisz skoroszyt w dogodnej lokalizacji na komputerze lub w sieci i przejdź do następnej procedury.
Tworzenie tabel bazy danych z arkuszy
-
W nowej lub istniejącej bazie danych:
Na karcie Dane zewnętrzne w grupie Importowanie kliknij pozycję Excel.
— 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>.
-
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.
-
Kliknij przycisk Dalej.
-
Na następnej stronie kreatora zaznacz pole wyboru Pierwszy wiersz zawiera nagłówki kolumn i kliknij przycisk Dalej.
-
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.
-
Na następnej stronie wybierz opcję Bez klucza podstawowego, a następnie kliknij przycisk Dalej.
-
Domyślnie program Access zastosuje nazwę arkusza do nowej tabeli. Zaakceptuj tę nazwę w oknie Importuj do tabeli i kliknij przycisk Zakończ.
-
Na stronie Zapisz kroki importu kliknij przycisk Zamknij. Zakończy to pracę kreatora.
-
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ń
Teraz możesz przystąpić do porównywania tabeli Rejestracja na zajęcia i Kierunek studiów. Ponieważ nie zdefiniowano relacji między obiema tabelami, należy utworzyć sprzężenia między odpowiednimi polami w zapytaniu. Tabele mają wiele wspólnych pól i musisz utworzyć sprzężenie dla każdej pary pól wspólnych: Identyfikator ucznia, Rok i Program nauczania (tabela Rejestracja na zajęcia) i Kierunek główny (tabela Kierunek studiów). W tym przykładzie interesuje Cię tylko kierunek studiów matematycznych, dlatego w celu ograniczenia wyników zapytania użyjesz również kryterium pola.
-
Otwórz bazę danych, w której zapisano przykładowe tabele.
-
Na karcie Tworzenie kliknij przycisk Projekt kwerendy.
-
Kliknij dwukrotnie tabelę zawierającą rekordy, które chcesz wyświetlić — w tym przykładzie tabelę Rejestracja na zajęcia , a następnie kliknij dwukrotnie tabelę, z którą chcesz ją porównać — w tym przykładzie tabelę Kierunek studiów .
-
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.
-
Przejrzyj trzy opcje w oknie dialogowym Właściwości sprzężenia . Domyślnie jest zaznaczona opcja 1. W niektórych przypadkach trzeba dostosować właściwości sprzężenia, aby uwzględnić dodatkowe wiersze z jednej tabeli. Ponieważ próbujesz znaleźć tylko pasujące dane, pozostaw dla sprzężenia ustawioną opcję 1. Zamknij okno dialogowe Właściwości sprzężenia , klikając przycisk Anuluj.
-
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.
-
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.*.
-
Dodaj do siatki pole Kierunek główny z tabeli Kierunek studiów, klikając je dwukrotnie.
-
Wyczyść pole wyboru w wierszu Pokaż kolumny Kierunek główny w siatce projektu zapytania.
-
W wierszu Kryteria kolumny Kierunek główny wpisz ciąg MATEMATYKA.
-
Na karcie Projektowanie w grupie Wyniki kliknij przycisk Uruchom.
Zapytanie zostanie uruchomione i po chwili pojawią się oceny studentów matematyki.
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
-
Otwórz bazę danych, w której zapisano przykładowe tabele.
-
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.
-
W kolumnie Typ danych zmień ustawienie dla pola Identyfikator studenta z Liczba na Tekst.
-
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.
-
Na karcie Tworzenie w grupie Inne kliknij polecenie Projekt zapytania.
-
Kliknij dwukrotnie pozycję Rejestracja na zajęcia, a następnie kliknij dwukrotnie pozycję Kierunek studiów.
-
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.
-
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.*.
-
Dodaj do siatki pole Identyfikator studenta z tabeli Kierunek studiów, klikając je dwukrotnie.
-
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].
-
Dodaj do siatki pole Kierunek główny z tabeli Kierunek studiów, klikając je dwukrotnie.
-
Wyczyść pole wyboru w wierszu Pokaż kolumny Kierunek główny w siatce projektu. W wierszu Kryteria wpisz MATEMATYKA.
-
Na karcie Projektowanie w grupie Wyniki kliknij przycisk Uruchom.
Zapytanie zostanie uruchomione i po chwili pojawią się oceny studentów matematyki.