Операция INNER JOIN

Важно :  Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь, в качестве справочного материала.

Объединяет записи из двух таблиц, если в связующих полях этих таблиц содержатся одинаковые значения.

Синтаксис

FROM Таблица1 INNER JOIN Таблица2 НА table1. поле1оператор_сравненияТаблица2. поле2

Операция INNER JOIN состоит из следующих элементов:

Элемент

Описание

таблица1, таблица2

Имена таблиц, содержащих объединяемые записи

поле1, поле2

Имена связываемых полей. Поля, не являющиеся числовыми, должны относиться к одному тип данных и содержать данные одного вида. Однако имена этих полей могут быть разными

compopr

Любой оператор сравнения: (=, <, >, <=, >= или <>)


Замечания

Операцию INNER JOIN можно использовать в любом предложении FROM. Это самый распространенный тип объединения. С его помощью происходит объединение записей из двух таблиц по связующему полю, если оно содержит одинаковые значения в обеих таблицах.

При работе с таблицами «Отделы» и «Сотрудники» операцией INNER JOIN можно воспользоваться для выбора всех сотрудников в каждом отделе. Если же требуется выбрать все отделы (включая те из них, в которых нет сотрудников) или всех сотрудников (в том числе и не закрепленных за отделом), можно при помощи операции LEFT JOIN или RIGHT JOIN создать внешнее соединение.

Если вы пытаетесь присоединиться к полям, содержащим данных МЕМО или поле объекта OLE, возникает ошибка.

Вы можете присоединиться любые два числовые поля похожих типов. Например вы можете присоединиться на длинные полей и "Счетчик", так как они являются как типы. Тем не менее нельзя присоединиться Single и Double типы полей.

В следующем примере показано, как можно объединить таблицы «Категории» и «Товары» по полю «ИДКатегории».

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

В предыдущем примере «ИДКатегории» является связующим полем, но оно не включено в результат запроса, поскольку оно не указано в инструкции SELECT. Чтобы включить связующее поле в результат запроса, укажите имя поля в инструкции SELECT: в данном случае это Категории.ИДКатегории.

В инструкции JOIN можно также связать несколько предложений ON, используя следующий синтаксис:

SELECT поля
FROM таблица1 INNER JOIN таблица2
ON таблица1.поле1оператор_сравнениятаблица2.поле1 AND
ON таблица1.поле2оператор_сравнениятаблица2.поле2) OR
ON таблица1.поле3оператор_сравнениятаблица2.поле3)]

Ниже приведен пример синтаксиса, с помощью которого можно составлять вложенные инструкции JOIN:

ВЫБОР полей
ИЗ Таблица1 INNER JOIN
(Таблица2 INNER JOIN [()]Таблица3
[INNER JOIN [()]tablex [INNER JOIN...)]
НА Таблица3. поле3оператор_сравненияtablex. fieldx)]
НА Таблица2. поле2оператор_сравненияtable3. поле3)
НА table1. поле1оператор_сравненияТаблица2. поле2;

Операции LEFT JOIN и RIGHT JOIN могут быть вложены в операцию INNER JOIN, но операция INNER JOIN не может быть вложена в операцию LEFT JOIN или RIGHT JOIN.



Примечание : Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×