Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Łączy rekordy z dwóch tabel, ilekroć we wspólnym polu występują pasujące wartości.

Składnia

FROM tabela1 INNER JOIN tabela2 ON tabela1.pole1operator_porównania tabela2.pole2

Operacja INNER JOIN zawiera następujące segmenty:

Segment

Opis

tabela1, tabela2

Nazwy tabel, z których pochodzą łączone rekordy.

pole1, pole2

Nazwy sprzęganych pól. Jeśli nie są to pola numeryczne, muszą mieć ten sam typ danych i zawierać ten sam rodzaj danych, ale mogą mieć inne nazwy.

operator_porównania

Dowolny relacyjny operator porównania: „=”, „<”, „>”, „<=”, „>=”, lub „<>”.


Spostrzeżenia

Operacji INNER JOIN możesz użyć w dowolnej klauzuli FROM. Jest to najpopularniejszy typ sprzężenia. Sprzężenia wewnętrzne łączą rekordy z dwóch tabel, ilekroć we wspólnym dla obu tabel polu występują pasujące wartości.

Operacji INNER JOIN możesz użyć dla tabel Działy i Pracownicy, aby wybrać wszystkich pracowników z każdego działu. Natomiast w celu wybrania wszystkich działów (nawet jeśli do niektórych z nich nie są przypisani żadni pracownicy) lub wszystkich pracowników (nawet jeśli niektórzy z nich nie są przypisani do żadnego działu) możesz użyć operacji LEFT JOIN lub RIGHT JOIN, aby utworzyć sprzężenie zewnętrzne.

W przypadku próby połączenia pól zawierających dane typu Nota lub Obiekt OLE wystąpi błąd.

Możesz połączyć dowolne dwa pola liczbowe podobnego typu. Na przykład możesz połączyć pola typu Autonumerowanie i Długie, ponieważ są one podobnego typu. Nie możesz jednak połączyć pól typu Pojedyncze i Podwójne.

W poniższym przykładzie pokazano, jak utworzyć sprzężenie tabel Kategorie i Produkty w polu Identyfikator_kategorii:

SELECT CategoryName, ProductName
FROM Categories INNER JOIN Products
ON Categories.CategoryID = Products.CategoryID;

W poprzednim przykładzie pole Identyfikator_kategorii jest polem sprzężonym, które jednak nie jest uwzględnione w wynikach zapytania, ponieważ nie jest zawarte w instrukcji SELECT. Aby uwzględnić pole sprzężone, umieść nazwę tego pola w instrukcji SELECT — w tym przypadku jest to nazwa Categories.CategoryID.

Możesz też połączyć kilka klauzul ON w instrukcji JOIN, stosując następującą składnię:

SELECT pola
FROM tabela1 INNER JOIN tabela2
ON tabela1.pole1operator_porównaniatabela2.pole1 AND
ON tabela1.pole2operator_porównaniatabela2.pole2) OR
ON tabela1.pole3operator_porównaniatabela2.pole3)];

Ponadto możesz zagnieździć instrukcje JOIN za pomocą poniższej składni:

SELECT pola
FROM tabela1 INNER JOIN
(tabela2 INNER JOIN [( ]tabela3
[INNER JOIN [( ]tabelax [INNER JOIN ...)]
ON tabela3.pole3operator_porównaniatabelax.polex)]
ON tabela2.pole2operator_porównaniatabela3.pole3)
ON tabela1.pole1operator_porównaniatabela2.pole2;

Operacja LEFT JOIN lub RIGHT JOIN może być zagnieżdżona w operacji INNER JOIN, ale operacja INNER JOIN nie może być zagnieżdżona w operacji LEFT JOIN ani w operacji RIGHT JOIN.



Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×