Создание итогового запроса в программу Microsoft Access
Если полностью заполнить данными таблицу Комплектующие, введя параметры всех компонентов, входящих в сборочную спецификацию персонального компьютера, то можно узнать, во что обходится себестоимость комплектующих узлов. Запросы, выполняющие вычисления по всем записям для какого-либо числового поля, называются итоговыми запросами. В итоговом запросе может рассчитываться сумма значений или величина среднего значения по всем ячейкам поля, может выбираться максимальное или минимальное значение данных в поле, может также исполняться иная итоговая функция. Итоговые запросы, как и запросы на выборку, готовятся с помощью бланка запроса по образцу.
Предположим, что малое предприятие собирает компьютеры трех классов: «Элитный», «Деловой» и «Экономичный». Несмотря на то что архитектура у всех компьютеров близка, их компоненты заметно отличаются по цене и техническим параметрам. Соответственно, имеются значительные отличия в цене этих трех моделей, что важно для захвата разных секторов рынка. Наша задача — подготовить итоговый отчет, с помощью которого можно определять цену каждой из модели компьютеров и динамично ее отслеживать при изменении входящих компонентов или их поставщиков.
- Запустите программу Microsoft Access (Пуск ► Программы ► Microsoft Access).
- На панели Создание файла (в Области задач) щелкните на имени базы данных
Комплектующие в разделе Открытие файла. - В окне Комплектующие: база данных откройте панель Таблицы. Выберите таблицу Комплектующие.
- Щелчком на значке Конструктор откройте таблицу в режиме проектирования — нам это необходимо для создания дополнительного поля Класс, в котором будут храниться данные о том, для какого класса изделий предназначены компоненты.
- В начало структуры таблицы вставьте новое поле. Для этого выделите первое поле (Компонент) и нажмите клавишу INSERT.
- Введите имя нового поля — Класс и определите его тип — Текстовый.
- Закройте окно Конструктора. При закрытии подтвердите необходимость изменить структуру таблицы.
- Откройте таблицу Комплектующие и наполните ее содержанием, введя для каждого класса данные по следующим изделиям:
- материнская плата;
- процессор;
- оперативная память;
- жесткий диск;
- корпус;
- дисковод CD-ROM;
- дисковод гибких дисков;
- видеоадаптер;
- звуковая карта;
- клавиатура;
- мышь.
Цены на эти изделия для каждого класса проставьте произвольно. Прочие поля таблицы можно не заполнять — в формировании итогового запроса они участвовать не будут.
Закройте таблицу Комплектующие.
Откройте панель Запросы щелчком на одноименной кнопке окна Комплектующие: база данных. Выполните двойной щелчок на значке Создание запроса в режиме конструктора. В открывшемся диалоговом окне Добавление таблицы выберите таблицу Комплектующие, на основе которой будет разрабатываться итоговый запрос. Закройте окно Добавление таблицы. В бланк запроса по образцу введите следующие поля таблицы Комплектующие: Класс, Компонент, Цена.
Для поля Класс включите сортировку по возрастанию. Включите также сортировку по полю Цена, но на этот раз — по убыванию.
На панели инструментов Microsoft Access щелкните на кнопке Групповые операции или воспользуйтесь строкой меню (Вид ► Групповые операции). Эта команда необходима для создания в нижней части бланка строки Групповые операции. Именно на ее базе и создаются итоговые вычисления. Все поля, отобранные для запроса, получают в этой строке значение Группировка.
Для поля, по которому производится группировка записей (в нашем случае — Класс), оставьте в строке Групповые операции значение Группировка. Для остальных полей щелкните в этой строке — появится кнопка раскрывающегося списка, из которого можно выбрать итоговую функцию для расчета значений в данном поле.
Для поля Цена выберите итоговую функцию Sum для определения стоимости изделия как суммы стоимостей комплектующих. Для поля Компонент выберите итоговую функцию Count, определяющую общее количество записей, вошедших в группу. В нашем случае это количество узлов, из которых собран компьютер.
Закройте бланк запроса по образцу и дайте ему имя: Расчет стоимости изделия. Запустите запрос и убедитесь, что он правильно работает. Закройте все объекты базы данных. Завершите работу с программой Microsoft Access.
Мы научились создавать так называемые итоговые запросы. Это запросы, производящие вычисления по всем значениям одного поля. Мы научились также выбирать используемую итоговую функцию.