- •Методические указания к выполнению лабораторной работы №7
- •Севастополь
- •Создание базы данных на основе таблицы
- •Создание структуры таблицы базы данных
- •Создание таблицы в режиме конструктора
- •Создание запросов в базе данных
- •Создание базы данных экологической службы предприятия
- •Задание 1.
- •Задание 2.
- •Включение полей в запрос
- •Ввод условий отбора
- •Итоговые запросы
- •Форма отчетности
Включение полей в запрос
Первым шагом при создании запроса является выбор полей, включаемых в набор записей. Для этого можно перетащить поле в нужный столбец бланка из списка полей в верхней части окна. При перетаскивании поля указатель мыши превращается в маленький прямоугольник.
Пример. Пусть требуется сформировать следующий запрос к базе «Сотрудники»: Получить список всех работников моложе 30 лет. Первым делом включим в наш запрос поле Фамилия, для чего левой кнопкой мыши перетащим название этого поля из таблицы в верхней части панели конструктора в первый столбец бланка QBE в строку Поле. Организуйте вывод остальных полей и предусмотрите сортировку по соответствующему полю.
Ввод условий отбора
Попробуем отобрать записи с определенными значениями полей.
Если вы хотите отобрать записи с конкретным значением поля, введите его в ячейку Условие отбора этого поля. Текстовое значение, используемое в качестве условия отбора, должно быть заключено в кавычки.
Для указания интервалов Вы можете использовать выражения:
меньше (<), больше (>), больше или равно (>=) или не равно (<>) некоторому заданному значению.
Так для нашего примера, перетащим поле Дата рождения во второй столбец, а в качестве условия отбора укажем:
>31.09.82 , что соответствует условию “моложе 30 лет”.
Сохраните запрос под именем Сотрудники моложе 30 лет.
Итоговые запросы
Иногда вас интересуют не отдельные записи таблицы, а итоговые значения по группам данных. Например, вы хотите узнать средний объем продаж по каждому месяцу прошлого года. Ответы на такие вопросы дает итоговый запрос. Для вычисления итоговых значений на вкладке Конструктор нажмите кнопку Итоги, чтобы в бланке QBE появилась строка Групповая операция.
Когда вы нажмете кнопку Групповая операция на панели инструментов, Access использует установку Группировка в строке Групповая операция для любого поля, занесенного в бланк запроса. Теперь записи по каждому полю группируются, но итог не подводится. Если выполнить запрос сейчас, вы получите набор записей, включающий по одной строке для каждого уникального значения полей запроса, но без итогов. Для получения итогов замените установку Группировка в строке Групповая операция на конкретные итоговые функции.
Access предоставляет девять функций, обеспечивающих выполнение групповых операций. Вы можете задать нужную вам функцию, введя ее имя с клавиатуры в строке Групповая операция бланка запроса или выбрав ее в раскрывающемся списке. Ниже перечислены итоговые функции Access:
Sum Вычисляет сумму всех значений заданного поля в каждой группе. Используется только для числовых или денежных полей.
Avg Вычисляет среднее арифметическое всех значений данного поля в каждой группе. Используется только для числовых или денежных полей.
Min Возвращает наименьшее значение, найденное в этом поле внутри каждой группы. Для числовых полей возвращается наименьшее значение. Для текстовых полей — наименьшее из символьных значений независимо от регистра.
Мах Возвращает наибольшее значение, найденное в этом поле внутри каждой группы. Для числовых полей возвращается наибольшее значение. Для текстовых полей — наибольшее из символьных значений независимо от регистра.
Count Возвращает число записей, в которых значения данного поля отличны от Null. Чтобы подсчитать число записей в каждой группе с учетом значений Null, введите в строку Поле специальное выражение COUNT(*).
StDev Вычисляет стандартное отклонение всех значений данного поля в каждой группе. Эта функция применяется только к числовым или денежным полям. Если в группе меньше двух строк, Access возвращает значение Null.
Var Вычисляет дисперсию значений данного поля в каждой группе. Эта функция применима только к числовым или денежным полям. Если в группе менее двух строк, Access возвращает значение Null.
First Возвращает первое значение этого поля в группе.
Last Возвращает последнее значение этого поля в группе.
Реализуйте следующие запросы:
Получить список всех сотрудников сектора 2С с указанием должностей;
Получить список сотрудников (с указанием шифра), работающих в должности «лаборант»;
Вывести информацию обо всех старших менеджерах предприятия;
Получить список сотрудников, проживающих в Нахимовском районе;
Получить список всех сотрудников-женщин моложе 30 лет;
Получить список всех сотрудников пенсионного возраста (мужчин старше 60 лет, женщин старше 56 лет);
Получить список телефонов всех сотрудников, живущих в Балаклавском районе;
Подсчитать число сотрудников, имеющих стационарный телефон;
Получить список сотрудников, не имеющих стационарных телефонов;
Вывести информацию обо всех отделах, имеющих в штатном расписании должность «инженер».
