Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Способы объединения данных из нескольких таблиц или запросов в запросе



Запросы удобно использовать для объединения или выполнения действий над данными, расположенными в нескольких таблицах или запросах. Например, необходимо просмотреть данные о клиенте, а также заказы, которые он разместил. Для получения этих сведений необходимо получить данные из таблиц «Клиенты» и «Заказы».

При добавлении в запрос нескольких таблиц или запросов необходимо убедиться, что их списки полей соединены друг с другом линией объединения, что позволяет Microsoft Access определить тип объединения.

Если таблицы в запросе не соединены прямо или косвенно друг с другом, то для Microsoft Access остается неизвестным, какие записи связаны с какими, и на экране отображаются все комбинации записей между двумя таблицами (это называется «полное объединение» или «декартово произведение»). Таким образом, если таблица содержит 10 записей, то в результате запроса будет 100 записей (10X10). Также время выполнения запроса очень увеличится, а полученные в конечном счете результаты будут не столь значительны.

Если же ранее в окне «Схема данных» были созданы связи между таблицами, то при добавлении связанных таблиц в режиме конструктора линии объединения выводятся на экран автоматически. Если необходима целостность данных, то над линией объединения автоматически отображается цифра «1», означающая, что таблица находится на стороне «один» в отношении связей «один-ко-многим», а также знак целостности для указания таблиц, находящихся на стороне «многие».

Если связи не были созданы, то при добавлении в запрос двух таблиц, содержащих поля с одинаковым или совместимым типом данных, а также если одно из объединенных полей является ключевым, то связи будут созданы автоматически. В этом случае символы «один» и «многие» отображены не будут, так как целостность данных не требуется.

Иногда таблицы, добавляемые в запрос, не содержат полей, которые могут быть объединены. В этом случае рекомендуется создать одну или несколько дополнительных таблиц или запросов, которые будут служить в качестве моста между таблицами, данные которых должны быть использованы. Например, если в запрос добавить таблицы «Клиенты» и «Заказано», то между ними не будет линии связи, так как они не содержат полей, которые могут быть объединены. А таблица «Заказы» связана с обеими таблицами. Таким образом, таблицу «Заказы» можно включить в запрос, тем самым обеспечив связь между указанными двумя таблицами.

Если таблицы и запросы объединены, и из обеих таблиц или запросов в бланк запроса были добавлены поля в режиме конструктора запроса, то по умолчанию запрос производит проверку на наличие в объединенных полях соответствующих значений. (В терминологии баз данных это называется внутреннее объединение.) Если соответствующие записи обнаружены, то они объединяются и отображаются в результатах запроса как одна запись. Если таблицы или запросы не содержат соответствующих записей, то в результатах запроса ничего не отображено. Если необходимо выделить все записи таблицы или запроса, не зависимо от того, содержит или вторая таблица или запрос соответствующие им записи, нужно изменить тип объединения. Для получения примеров различных типов объединений и их воздействия на результаты запроса нажмите кнопку.

Если требуется выделить записи, основанные на значении из объединенного поля, которое больше, меньше, не равно, равно, больше или равно или меньше или равно значению из другого объединенного поля, необходимо в режиме SQL создать инструкцию SQL.

Примечание. При создании запроса на несколько таблиц, пользователь может иметь или не иметь возможность обновления данных. Для получения дополнительных сведений нажмите кнопку.

{ewc HLP95EN.DLL, DYNALINK, "Связь с Web или другими источниками":"acconBringingTogetherDataFromMoreThanOneTableInQuerySW":1:"Foo":"Invisible"}





Дата публикования: 2014-11-04; Прочитано: 231 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...