Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 1718.pdf
Скачиваний:
3
Добавлен:
30.04.2022
Размер:
1.86 Mб
Скачать

Access перемещает поля с заполненной ячейкой Сортировка

влевую часть бланка запроса.

Взавершение отсортируем фамилии студентов в алфавитном порядке. Для этого перейдем в столбец, содержащий поле Фамилия, выполним щелчок в строке

Сортировка и в появившемся списке выберем способ сортировки по возрастанию (если задать сортировку по убыванию, Access отсортирует фамилии студентов от Я до А).

8.2. Вычисления в запросе

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

ца 5).

 

Таблица 3

 

 

Функция

Действие

Sum

Суммирование значений определенного поля,

 

находящихся в записях, которые отобраны

 

запросом

Avg

Вычисление среднего значения в тех записях

 

определенного поля, которые отобраны

 

запросом

Min

Вычисление минимального значения в записях

 

определенного поля, отобранных запросом

Max

Вычисление максимального значения в записях

 

определенного поля, отобранных запросом

Count

Вычисление количества записей, отобранных

 

запросом, в определенном поле

First

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

 

поле записей, отобранных запросом

Last

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

 

поле записей, отобранных запросом

42

 

Продолжение таблицы 5

 

 

Функция

Действие

StDev

Вычисление стандартного отклонения

 

значений данного поля для всех записей,

 

отобранных запросом

Var

Вычисление вариации значений данного поля

 

для всех записей, отобранных запросом

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

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

"РС-061" и "РС-071". Для этого в окно Конструктора запросов добавим таблицы СТУДЕНТ, УСПЕВАЕМОСТЬ и ДИСЦИПЛИНА, перенесем из них в бланк запроса поля

Группа, Название, Оценка. В строке Условие отбора для поля Группа зададим критерий отбора — " РС-061" Or " РС071", в строке Сортировка для этого же поля выберем значение по возрастанию. Теперь выполним щелчок на кнопке Групповые операции панели инструментов (кнопка с греческой литерой сигма), в бланке запроса появится строка Групповая операция со значением Группировка в каждом поле. Выполнив щелчок в этой строке для поля Оценка, выберем из выпадающего списка функцию Avg.

43

8.3. Параметрические запросы

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

Рассмотрим создание параметрического запроса, позволяющего отыскивать в таблицах базы данных сведения об успеваемости любого студента по заданной в процессе выполнения запроса фамилии студента. Формирование параметрического запроса проводится примерно так же, как и формирование обычного запроса в режиме Конструктора, только поля строки Условие отбора заполняются не конкретными критериями отбора, а обращением к пользователю для ввода критерия. Обращение необходимо заключить в квадратные скобки, например: [Фамилия студента]. Во время выполнения запроса это обращение будет адресовано пользователю, который введет критерий отбора. На основе этого критерия (с учетом других критериев, заданных в спецификации запроса) будет осуществляться отбор записей.

44

При запуске запроса на выполнение Access обратится к пользователю с просьбой задать значение критерия отбора в окне Введите значение параметра.

Контрольные вопросы

1.В каких случаях при создании запроса целесообразнее воспользоваться Мастером запросов, а в каких — Конструктором?

2.Как в таблице СТУДЕНТ найти сведения о всех студентах, фамилии которых начинаются на букву 'К'?

3.Если таблица СТУДЕНТ содержит столбцы Фамилия и Средний балл, то как вывести сведения о всех студентах с наибольшим баллом?

4.Как осуществить сортировку данных в запросе?

5.Создайте запрос, позволяющий узнать о всех отличниках вашей группы.

6.Создайте параметрический запрос, позволяющий узнать оценку определенного студента по определенной дисциплине.

7.Постройте перекрестный запрос, выводящий оценки всех студентов по дисциплине "Высшая математика" за первый (код дисциплины равен 1) и второй (код равен 2) семестры.

8.Создайте запрос с группировкой, выводящий средний балл каждого студента с учетом всех дисциплин.

45