Поєднує записи вихідної таблиці під час використання в будь-яких реченнях FROM.
Синтаксис
FROM таблиця1 [ LEFT | RIGHT ] JOIN таблиця2
ON таблиця1.поле1compopr таблиця2.поле2
Операції LEFT JOIN і RIGHT JOIN складаються з таких частин:
| Частина | Опис |
|---|---|
| таблиця1, таблиця2 | Імена таблиць, записи яких буде об’єднано. |
| поле1, поле2 | Імена об’єднаних полів. Поля повинні мати однаковий тип даних і однакові дані, але не повинні мати однакові імена. |
| compopr | Будь-який реляційний оператор порівняння: "=," "," ">," "=", "<>=" або "<>."< |
Примітки
За допомогою операції LEFT JOIN можна створити ліве зовнішнє об'єднання. Ліві зовнішні об’єднання включають усі записи з першої (ліворуч) із двох таблиць, навіть якщо для записів у другій таблиці (праворуч) немає відповідних значень.
За допомогою операції RIGHT JOIN можна створити праве зовнішнє об'єднання. Праві зовнішні об’єднання включають усі записи з другої (праворуч) із двох таблиць, навіть якщо для записів у першій таблиці (ліворуч) немає відповідних значень.
Наприклад, ви можете застосувати LEFT JOIN до таблиці "Departments" (Відділи) (ліворуч) і "Employees" (Співробітники) (праворуч), щоб вибрати всі відділи, зокрема ті, яким не призначено співробітників. Щоб вибрати всіх працівників, зокрема тих, які не належать до жодного відділу, слід використати RIGHT JOIN.
У наведеному нижче прикладі показано, як можна об’єднати таблиці "Categories" (Категорії) і "Products" (Продукти) у полі "CategoryID". Запит повертає список усіх категорій, зокрема тих, які не містять жодних продуктів:
SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;
У цьому прикладі CategoryID є приєднаним полем, але воно не включається до результатів запиту, тому що його не включено в інструкцію SELECT. Щоб включити приєднане поле, введіть ім'я поля в інструкцію SELECT. Categories.CategoryID
Щоб створити запит, який містить лише записи з однаковими даними в приєднаних полях, використовуйте операцію INNER JOIN.
- Операції LEFT JOIN і RIGHT JOIN можна вкласти в INNER JOIN, але INNER JOIN не можна вкласти в LEFT JOIN або RIGHT JOIN. Щоб дізнатися, як вкладати операції приєднання в інші об'єднання, див. тему вкладення в розділі про INNER JOIN.
- Ви можете зв'язати кілька речень ON. Щоб дізнатися, як це зробити, див. тему зв'язування речень у розділі про INNER JOIN.
Спроба об’єднати поля, які містять дані типу Memo або об’єкта OLE, призведе до помилки.