Внутреннее соединение
Внутреннее соединение
Внутреннее соединение двух таблиц по одному полю в реляционной базе данных строится на основе отношения "один-ко-многим". Примером может служить демонстрационная база данных "Борей" (Northwind), в которой все соединения являются внутренними соединениями по одному полю на основе указанного отношения. В ходе разработки баз данных, в которых предполагается использование запросов на основе внутренних соединений, придерживайтесь следующих правил.
-
Каждая таблица "один" должна иметь первичный ключ с уникальными.значениями. Отсутствие повторений значений поля или полей первичного ключа в таблице Access устанавливает автоматически.
-
Отношение "многие-ко-многим" реализуйте на основе промежуточной таблицы, которая связана с каждой из двух таблиц отношением "многие-к-одному". Для обеих связей промежуточная таблица будет находиться со стороны "многие".
-
Необходимо извлечь повторяющиеся данные в новую таблицу и связать ее с таблицей, из которой эти данные были получены, отношением "многие-к-одному". Основная цель — однозначно определить извлеченные данные. Часто для этого приходится использовать первичный ключ, состоящий из нескольких полей. Для автоматизации работы по нахождению и извлечению повторяющейся информации можно использовать Мастер по анализу таблиц Microsoft Access. Этот мастер запускается при выборе команды меню
Сервис, Анализ, Таблица
(Tools, Analysis, Table).
В качестве примера использования запроса на основе внутреннего соединения по одному полю в базе данных "Борей" (Northwind) построим отчет с указанием марки товара, его поставщика, единицы измерения товара и его цены:
-
Если база данных "Борей" открыта, закройте все окна, кроме окна
База данных
(Database). Если база данных "Борей" не загружена, загрузите ее.
-
Щелкните по ярлыку
Запросы
(Queries) на панели объектов окна
База данных
(Database), чтобы открыть список запросов, а затем нажмите кнопку
Создать
(New) для создания нового запроса. В появившемся диалоговом окне
Новый запрос
(New Query) выделите элемент
Конструктор
(Design View) и нажмите кнопку
ОК.
Access отображает диалоговое окно
Добавление таблицы
(Show Table) поверх пустого окна запроса.
-
Выберите таблицу "Поставщики" (Suppliers) и добавьте ее в запрос. Access покажет список полей таблицы в верхней панели окна запроса.
-
Добавьте также таблицу "Товары" (Products) и закройте диалоговое окно
Добавление таблицы
(Show Table). Access добавляет список полей таблицы "Товары" (Products) в окно запроса и изображает соединение полей "КодПоставщика" (SupplierlD) двух таблиц (рис. 4.20). Соединение создается автоматически, т. к. поле "КодПоставщика" является ключевым в таблице "Поставщики" и в таблице "Товары" найдено поле с тем же именем (внешний ключ). Отображаемое отношение является отношением "один-ко-многим".
Содержание раздела