Перекрёстные запросы

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

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

Создадим перекрёстный запрос Модель – Покупательна основе таблицы Предлагаемые модели, используя для выбора фамилий покупателей таблицу Клиенты.

В меню Запросактивизируйте команду Перекрёстный.Access отобразит в бланке запроса строки Групповая операция и Перекрёстная таблица. Включите в бланк запроса поля Модельи Транспортные издержкииз таблицы Предлагаемые модели и поле Фамилияиз таблицы Клиенты.Чтобы значения поля (например, Модель) появились в заголовках строк, выполните щелчок по строке Перекрёстная таблицаи выберите в списке строку Заголовки строк.В строке Групповая операция для этого поля должна сохраниться стандартная установка Группировка (рис. 2.13).

Чтобы значения поля Фамилияпоявились в заголовке колонки, выполните щелчок по строкеПерекрёстная таблица и выберите строку Заголовки столбцов. В этом случае в строке Групповая операциядолжна остаться стандартная установка Группировка.

Для отображения содержимого поля в перекрёстной таблице в качестве значения поля Транспортные издержкищёлкните на строке Перекрёстная таблица и укажите элемент Значение.В строке Групповая операциядля этого поля введите необходимую функцию Sum.

При определении критериев отбора в строке Групповая операциядля желаемого поля следует выбрать значение Условиеи ввести выражение в строку Условие отбора.Для этого полястрокуПерекрёстная таблицаоставьте пустой. Критерий отбора мы вводить не будем.

Рис. 2.13. Проектирование перекрёстного запроса

Рис. 2.14. Результат выполнения перекрёстного запроса

Чтобы отобразить на экране результирующий набор записей созданного запроса, следует перейти в режим таблицы (рис. 2.14).

2.11. Создание перекрёстного запроса
с помощью мастера

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

В окне данных перейдите на вкладку Запросыи щёлкните по кнопке Создать. В появившемся диалоговом окне Новый запросвыберите значение Перекрёстный запроси нажмите кнопку ОК.

В первом диалоговом окне выберите таблицу или простой запрос, на основе которой мастер создаст перекрёстный запрос. Поскольку в нашем примере используются две таблицы – Предлагаемые моделии Клиенты, сначала следует отобрать из обеих таблиц данные, необходимые для перекрёстного запроса. Эту работу мы уже сделали, создав запрос Операции с клиентами с помощью мастера простого запроса. Выберите его в качестве базового и нажмите кнопку Далее(рис. 2.15).

Рис. 2.15. Выбор запроса для создания перекрёстного запроса

Чтобы указать, имена каких полей должны использоваться в качестве заголовков строк перекрёстной таблицы, из предложенных полей Доступные поля следующего окна мастера выберите поле Моделии поместите его в список Выбранные поля посредством кнопки [ > ] (рис. 2.16).

Рис. 2.16. Выбор заголовков строк для перекрёстной таблицы

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

Рис. 2.17. Создание колонок перекрёстной таблицы

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

Рис. 2.18. Определение вычисляемых значений для перекрёстного запроса

Рис. 2.19. Результат выполнения перекрёстного запроса

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: