Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №5.pdf
Скачиваний:
22
Добавлен:
13.04.2015
Размер:
1.4 Mб
Скачать

Рис. 6.7. Запрос на основе таблицы тАттестат с вычисляемым полем Среднее

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

Для вычисления итоговых значений надо нажать кнопку Групповые операции(), чтобы в бланке QBE появилась строка Групповые операции. Access использует установку Группировка в строке Групповая операция для любого поля, занесенного в бланк запроса. Теперь записи по каждому полю группируются, но итог не подводится. Если выполнить запрос сейчас, вы получите набор записей, включающий по одной строке для каждого уникального значения поля запроса – но без итогов. Для получения итогов замените установку Группировка в строке Групповая операция на конкретные итоговые функции.

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

Итоговые функции Access:

Sum – вычисляет сумму всех значений заданного поля в каждой группе.

Avg – вычисляет среднее арифметическое всех значений данного поля в каждой группе. Min – возвращает наименьшее значение, найденное в этом поле внутри каждой группы. Max – возвращает наибольшее значение, найденное в этом поле внутри каждой группы. Count – возвращает число записей, в которых значения данного поля отличны от Null. StDev – стандартное отклонение всех значений данного поля в каждой группе.

Var –вычисляет дисперсию значений данного поля в каждой группе. First – возвращает первое значение этого поля в группе.

Last – возвращает последнее значение этого поля в группе.

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

26

Рис. 6.8. Запрос с применением групповой операции Sum

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

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

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

выберите Новый запрос в раскрывающемся списке кнопки Новый объект () на панели инструментов. В окне диалога Новый запрос выберите Конструктор, а затем в окне конструктора выберите команду Запрос->Перекрестный. Access добавит в бланк запроса строку Перекрестная таблица. В этой строке для каждого поля перекрестного запроса может быть выбрана одна из четырех установок: Заголовки строк, Заголовки столбцов, Значение (выводимое в ячейках перекрестной таблицы) и Не отображается. Для перекрестного запроса надо определить по крайней мере одно поле в качестве заголовков строк, одно для заголовков столбцов и одно поле значений. Каждое поле, являющееся заголовком столбцов, должно иметь в строке Групповая операция установку Группировка. Для поля, использующегося в качестве заголовков строк, в строке Групповая операция должна быть установлена операция Группировка, выбрана одна из итоговых функций (Count, Min, и т. д.) или введено выражение, содержащее итоговую функцию. Для поля с установкой Значение выбирается одна из итоговых функций или вводится выражение, использующее итоговую функцию.

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

Групповая операция и Не отображается в строке Перекрестная таблица, а затем ввести условие отбора. Условие отбора можно также задать для любого поля, используемого в качестве

27

заголовков столбцов, а данные можно сортировать по любым полям. (По умолчанию Access сортирует заголовки столбцов по возрастанию.)

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

а

б

Рис. 9. Перекрестный запрос в режиме конструктора (а), результат выполнения перекрестного запроса (б)

Модификация данных с помощью запросов на изменение. Проверка правильности отбора записей с помощью запроса на выборку

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

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

28