Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Использование в запросе всех полей

Поиск

Если в запросе вам нужны все или большинство полей, то нет необходимости перемещать их по одиночке. Чтобы поместить в список все поля, дважды щелкните на имени таблицы, выбрав, таким образом, все поля этой таблицы, и перенесите их в строку полей. Все поля переместятся в запрос на один столбец. Теперь можно задавать условия и порядок сортировки.

Можно также добавить все поля переносом звездочки, стоящей на первой позиции в списке полей таблицы. В этом случае в списке появится только имя таблицы со звездочкой Клиенты*, причем займет лишь один столбец. При выполнении запроса в выборке, тем не менее, окажутся все поля.

В столбце, где вместо имени поля используется звездочка, нельзя задавать условия или порядок сортировки, так как звездочка не представляет собой конкретное поле. Выход прост. Перенесите в список дополнительно то поле, по которому вы хотите сортировать выборку или задать условие. Сбросьте флажок Вывод на экран, чтобы оно не дублировалось в результирующей таблице (один раз – по звездочке и другой – заданное явно). Например, в приведенном ниже запросе выводятся все поля таблицы Клиенты, но отбираются только те клиенты, которые живут в Москве, а, кроме того, выборка отсортирована по фамилиям.

 

Рис. 5.6. Запрос на выборку

 

Добавление в запрос таблиц

Запрос может содержать поля из нескольких таблиц, даже если сначала вы выбрали одну. Чтобы добавить в запрос новую таблицу, выполните следующее.

Если вы уже закрыли запрос, выберите его на вкладке Запросы и щелкните на кнопке Конструктор. Добавьте таблицу Заказы. Если между таблицами установлены связи, то Access покажет линии между связанными полями. Например, если в запрос Клиенты в Москве добавить таблицу Заказы, то появится линия, указывающая на соотношение типа «один-ко-многим».

Теперь можно использовать поля из обеих таблиц. Например, если вас интересуют даты заказов каждого клиента, дважды щелкните на поле Дата в таблице Заказы.

Рис. 5.7. Добавление таблицы

 

Объединение таблиц

При добавлении таблиц в запрос могут возникать некоторые проблемы. Например, все клиенты, проживающие в Москве, делали заказы. Но если хотя бы один клиент не сделал заказа, а в запросе использованы как таблица Клиенты, так и таблица Заказы, то выборка будет содержать записи только тех клиентов из Москвы, которые делали заказы, даже если в запросе это явно не указано. При наличии в окне построителя запросов нескольких связанных таблиц Access объединяет их, используя только связанные поля, в данном случае клиентов из Москвы, для которых значение поля Код Клиента в таблице Заказы и Клиенты совпадает.

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

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

 

Рис. 5.8. Способ объединения таблиц

 

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

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

 



Поделиться:


Последнее изменение этой страницы: 2016-07-16; просмотров: 263; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.147.28.111 (0.005 с.)