Скачиваний:
38
Добавлен:
17.02.2014
Размер:
39.32 Кб
Скачать

Итоговые запросы

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

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

Табл. 1 Типы операций, доступные в строке Групповая операция бланка запроса

Значение

Выполняемая операция

Sum

Сложение

Avg

Среднее значение

Min

Минимальное значение

Мах

Максимальное значение,

Count

Количество записей, содержащих значения

StDev

Стандартное отклонение

Var

Дисперсия

First

Значение в первой записи

Last

Значение в последней записи

Определение суммы всех значений по полю

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

1. Откройте новое окно конструктора запросов и добавьте в него

таблицу Сотрудники.

2. Добавьте в бланк запроса прле Зарплата.

3. Выберите команду Вид | Групповые операции для добавления в бланк запроса строки Групповая операция (если она в настоящий момент отсутствует).

4 Нажмите кнопку мыши в первом столбце строки Групповая операция и из раскрывающегося списка выберите значение Sum

5. Нажмите кнопку Запуск и просмотрите результаты в режиме таб­лицы. Обратите внимание, что результирующая таблица содержит всего лишь одну запись.

Определение максимального и среднего значения

MS Access позволяет вычислить несколько итоговых значений по од­ному и тому же полю. Предположим, вы хотите узнать не только общую сумму, которую необходимо выплатить в качестве заработной платы, но также максимальное и среднее значение заработной платы. Для решения этой задачи вернитесь в окно конструктора запросов предыдущего запроса и добавьте в бланк запроса поле Зарплата еще два раза. Для второго поля Зарплата из раскрывающегося списка в строке Групповая операция выберите Мах, а для третьего — Avg. Выполните запрос и просмотрите интересующие вас данные.

Задание условий выборки в итоговых запросах

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

1 Добавьте в бланк запроса поле Должность. Сразу же после добавле­ния этого поля в строке Групповая операция устанавливается значе­ние Группировка.

2 Для ввода условия выборки необходимо изменить это значение на Условие При выборе этого значения автоматически снимается фла­жок Вывод на экран, и поле не выводится на экран при выполнении запроса.

3. После этого, как и в обычных запросах, в строке Условие отбора введите требуемое условие. Для определения итоговых значений по заработной плате программистов: Программист.

4. Для просмотра результатов выборки нажмите кнопку Запуск.

Группировка полей запроса

Группировка позволяет получить вычисляемую информацию о под­группах записей в таблице. Например, сгруппировав данные в таблице Заказы по полю Код товара, можно получить сведения о продажах това­ров каждого вида.

Как обычно, создание запроса начнете с добавления таблицы “Заказы” в окно конструктора запросов. Далее выполните следующие действия.

1. В первый столбец бланка запроса поместите поле Код товара.

2. Во второй столбец поместите Продано.

3. Выберите команду Вид | Групповые операции для добавления в бланк запроса строки Групповая операция.

4. В строке Групповая операция столбца Код товара установите значение Группировка, а для столбца Продано — значение Sum.

5. Выполните запрос.

6. Предположим вас интересует дополнительная информация ( том, сколько единиц товара каждого типа закупил каждый из покупателей. Поэтому добавим в запрос поле Код клиента и в строке Групповая операция оставим значение Группировка. В этом случае записи сгруппированы по каждому типу проданных товаров для каждого покупателя.

Включение в запрос выражений

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

1. Откройте новое окно конструктора запросов и добавьте в него таб­лицы Клиенты и Заказы.

2. В бланк запроса поместите поля Фамилия, Имя и Отчество (таблица Клиенты) и Код товара (таблица Заказы).

3. В бланк запроса добавьте вычисляемое поле и введите для него вы­ражение для вычисления стоимости партии товаров:

Стоимость: [Заказы]![Продано]*[Заказы]![Цена]

4. Нажмите кнопку Групповые операции на панели инструментов для добавления в бланк запроса строки Групповая операция.

5. В строке Групповая операция первых четырех столбцов установите значение Группировка, а для столбца, содержащего выражение — значение Sum.

6. Выполните запрос и вы увидите список клиентов и итоговую стои­мость проданных им товаров.

Использование свойства Набор значений для ограничения результатов выборки

Достаточно часто при просмотре результата запросов вас интересует только часть записей результирующей таблицы. В MS Access для дости­жения этих целей используется свойство Набор значений. Вы можете указать Access, чтобы он выводил 5, 25 или 100 записей с максималь­ными или минимальными значениями. Можно также установить вывод 5-ти или 25-ти процентов всех записей выборки. Вы можете установить это значение в окне свойств запроса , но намного проще для этих целей использовать список, расположенный правее кнопки Групповые операции на панели инструментов окна конструктора запросов. Нажмите на кнопку раскрытия списка, и вы увидите все возможные значе­ния этого свойства. Для использования свойства Набор значений необходимо указать в бланке запроса критерий сортировки записей: по возрастанию или убыва­нию. В предыдущих примерах мы более часто использовали сортировку по возрастанию. При выполнении же итоговых операций более наглядной может оказаться сортировка по убыванию, так как вас, прежде всего, могут интересовать максимальные значения.

Соседние файлы в папке лекции по базам данных в Access