
Проверьте, как это работает!
Иногда требуется создать запрос, чтобы извлечь информацию из источников данных, не связанных напрямую (т. е. без связей типа "один-к-одному" или "один-ко-многим").
Использование промежуточных таблиц для связывания источников данных в запросах
При запуске запроса в Access используются созданные вами связи между таблицами, а также прослеживаются и создаются связи между другими источниками данных. Если связь, необходимая для запроса, не существует, вы можете соединить таблицы в рамках этого запроса.
Предположим, вам нужно узнать, сколько заказов вы получили на продукты разных поставщиков. Таблица "Поставщики" не связана с таблицей "Сведения о заказах", в которой указаны коды продуктов и количество проданных товаров. Однако с таблицей "Сведения о заказах" связана таблица "Накладные".

Совет: Если эта связь может вам потребоваться не только в создаваемом запросе, лучше всего создать промежуточную связь для дальнейшего использования. Инструкции см. в статье Создание связей типа "многие-ко-многим".
Если вы не хотите создавать в своей базе данных промежуточную таблицу, в запросе вы можете использовать в ее роли таблицу "Накладные". Расположите таблицу "Поставщики" слева от таблицы "Накладные" и создайте связь.

Таблица "Накладные" связывает две другие таблицы: "Поставщики" и "Сведения о заказах". При создании связей между полями таблиц (например, между полем "Код" из таблицы "Поставщики" и полем "Код поставщика" из таблицы "Накладные") необходимо учитывать следующие условия:
-
В соединяемых полях должны храниться данные одного типа или сопоставимые сведения. Например, нельзя соединить текстовое поле с числовым.
-
Соединяемые поля должны соответствовать уникальным записям в каждой таблице. Например, не следует соединять два поля "Фамилия", поскольку фамилии не всегда уникальны.
-
Поля гарантируют правильность результатов записи. Например, если вы подключаете идентификатор поставщика к ИДЕНТИФИКАТОРу покупки, вы можете получить некоторые соответствия, если коды совпадают. Но результаты не будут иметь смысла, так как идентификатор поставщика не имеет значения для идентификатора покупки. Наилучшим вариантом является подключение кода из таблицы поставщиков к ИДЕНТИФИКАТОРу поставщика в таблице Заказы на покупку — возвращаемые записи будут осмысленными, так как оба поля определяют поставщика.
Действия
Независимо от того, есть в вашей базе данных промежуточная таблица или вы планируете использовать ее только в запросе, выполните указанные ниже действия.
-
Добавьте в запрос промежуточную таблицу между двумя несвязанными таблицами.
-
Создайте необходимые связи с промежуточной таблицей.
Для связей можно использовать соединения любых типов, однако связываемые поля должны удовлетворять описанным выше условиям.
-
Выполните запрос.
Создайте запрос, как обычно: добавьте выходные поля и необходимые условия, а затем выполните или сохраните запрос. Инструкции см. в статье Создание простых запросов.
Примечание: Включать промежуточную таблицу в результаты не требуется. Она просто должна быть частью источников данных в запросе, чтобы Access мог связать данные.
Вам нужны дополнительные возможности?
Создание запросов путем объединения нескольких источников данных
Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).