Операція INNER JOIN

Застосовується до
Access для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Поєднує записи з двох таблиць, якщо вони містять однакове значення в спільному полі.

Синтаксис

FROM таблиця1 INNER JOIN таблиця2 ON таблиця1.поле1 compopr таблиця2.поле2

Операція INNER JOIN складається з таких частин:

Частина Опис
таблиця1, таблиця2 Імена таблиць, записи яких буде об’єднано.
поле1, поле2 Імена об’єднаних полів. Якщо поля не числові, вони мають однаковий тип даних і містити однакові дані, але можуть мати різні імена.
compopr Будь-який реляційний оператор порівняння: "=," "," ">," "=", "<>=" або "<>."<

      

Примітки

Операцію INNER JOIN можна використовувати в будь-якому реченні FROM. Це найпоширеніший тип об’єднання. Операції внутрішнього об’єднання поєднують записи з двох таблиць у всіх випадках, коли вони містять однакове значення в спільному полі.

Ви можете застосувати операцію INNER JOIN до таблиць "Підрозділи" та "Працівники", щоб вибрати всіх працівників із кожного підрозділу. Натомість, якщо потрібно вибрати всі підрозділи (навіть ті, у яких немає працівників) або всіх працівників (навіть тих, які не належать до жодного підрозділу), скористайтесь операцією LEFT JOIN або RIGHT JOIN, щоб створити зовнішнє об'єднання.

Якщо спробувати об’єднати поля, які містять дані типу Memo або "Об’єкт OLE", станеться помилка.

Ви можете об’єднати будь-які два поля типу "Числовий" або схожих типів. Наприклад, типи "Автонумерація" та "Довге ціле число" схожі, тому такі поля можна об’єднати. Проте об’єднати поля типів "Одинарне значення" та "Подвійне значення" не можна.

На прикладі нижче продемонстровано, як об’єднати таблиці Categories і Products за полем CategoryID:

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

У прикладі вище CategoryID – це поле, за яким виконується об’єднання, але воно не входить до результатів запиту, тому що його не включено в інструкцію SELECT. Щоб включити таке поле в результати, додайте його ім'я в інструкцію SELECT. Categories.CategoryID

Ви також можете зв’язати в інструкції JOIN кілька речень ON, використовуючи такий синтаксис:

Поля SELECT
FROM таблиця1 INNER JOIN таблиця2
НА ТАБЛИЦЮ1. поле1compoprtable2. поле1 І
НА ТАБЛИЦЮ1. поле2compoprtable2. поле2) АБО
НА ТАБЛИЦЮ1. поле3compoprtable2. поле3)];

Крім того, можна вкласти інструкції JOIN, використовуючи такий синтаксис:

Поля SELECT
FROM table1 INNER JOIN
(таблиця2 INNER JOIN [( ]таблиця3
[INNER JOIN [( ]tablex [INNER JOIN ...)]
На таблицю3. field3compoprtablex. fieldx)]
НА ТАБЛИЦЮ 2. поле2compoprtable3. поле3)
НА ТАБЛИЦЮ1. поле1compoprtable2. поле2;

Операції LEFT JOIN і RIGHT JOIN можна вкласти в INNER JOIN, але INNER JOIN не можна вкласти в LEFT JOIN або RIGHT JOIN.