
Лабораторная работа № 3
Создание запроса на выборку, запроса «с параметром» и итогового запроса».
Цель: Приобрести практические навыки в создании запроса на выборку, запроса «с параметром» и итогового запроса. Формирование структуры запроса путем выбора базовой таблицы и полей, а также формирования условия отбора.
Порядок выполнения работы.
Задание 1 В этом упражнении мы создадим запрос на выборку книг, имеющих объем не менее 400 страниц при цене менее 80 рублей.
Запустить программу МS Ассеss (Пуск > Программы > МS Ассеss).
В окне МS Асcеss выбрать команду Открыть и в списке выбрать ранее созданную базу Книготорговля.
В окне базы данных Книготорговля в ленте Создание щелкнуть на значке Конструктор запросов — откроется бланк запроса по образцу. Одновременно с ним откроется диалоговое окно Добавление таблицы.
В окне Добавление таблицы выбрать таблицу Книги в продаже и щелкнуть на кнопке Добавить. Закрыть окно Добавление таблицы.
В списке полей таблицы Книги в продаже выбрать поля, включаемые в результирующую таблицу: Наименование, Автор, Объем, Цена. Выбор производите двойными щелчками на именах полей.
Задать условие отбора для поля Объем. В соответствующую строку ввести: > 400. Из таблицы будут выбираться не все издания, а только те, объем которых превышает 400 страниц.
Задать условие отбора для поля Цена. В соответствующую строку ввести: < 80. Теперь из таблицы будут выбираться только издания, имеющие цену менее 80 рублей. Бланк запроса приведен на рисунке 1.
Рисунок 1 Бланк конструктора запросов
Закрыть бланк запроса по образцу. При закрытии запроса введите его имя — Выбор изданий.
В окне базы данных Книготорговля открыть только что созданный запрос и рассмотреть результирующую таблицу. Ее содержательность зависит от того, что было введено в таблицу Книги в продаже при ее наполнении. Если ни одно издание не соответствует условию отбора и получившаяся результирующая таблица не имеет данных, откройте базовые таблицы и наполните их модельными данными, позволяющими проверить работу запроса.
Задание 2 Специальный тип запросов, называемый запросами «с параметром», позволяет пользователю самому ввести критерий отбора данных на этапе запуска запроса. Этим приемом обеспечивается гибкость работы с базой. Создадим простой запрос, позволяющий отбирать издания, предельную цену которых пользователь может задать сам при запуске запроса.
В окне базы данных Книготорговля в ленте Создание щелкнуть на значке Конструктор запросов — откроется бланк запроса по образцу. Одновременно с ним откроется диалоговое окно Добавление таблицы.
В окне Добавление таблицы выбрать таблицу Книги в продаже и щелкнуть на кнопке Добавить. Закрыть окно Добавление таблицы.
Аналогично пункту 4 добавить в схему данных таблицу Поставщики.
В списке полей таблицы Книги в продаже выбрать поля, включаемые в результирующую таблицу: Наименование, Автор, Цена, а в таблице Поставщики поле Поставщик. Выбор производите двойными щелчками на именах полей.
В строку Условие отбора для поля Цена ввести значение: < [Введите максимальную цену], чтобы при запуске запроса пользователь получал предложение ввести необходимую цену книги.
Закройте запрос. При закрытии сохраните его под именем Выбор книг.
В окне базы данных Книготорговля открыть панель Запросы и запустите запрос Выбор книг — на экране появится диалоговое окно Введите значение параметра, которое представлено на рисунке 2.
Рисунок 2 Диалоговое окно «Введите значение параметра»
Ввести какое-либо число и щелкните на кнопке ОК. В зависимости от того, что реально содержится в таблице Книги в продаже, по результатам запроса будет сформирована результирующая таблица.
Задание 3 Подготовить итоговый отчет, с помощью которого можно определять среднюю цену литературы в каждой из категорий (экономической, юридической и технической) и динамично ее отслеживать при изменении ассортимента и поставщиков.
В окне базы данных Книготорговля открыть панель Таблицы. Выберите таблицу Книги в продаже.
Щелчком на значке Конструктор открыть таблицу в режиме проектирования.
В начало структуры таблицы вставьте новое поле. Для этого выделите первое поле (Наименование) и нажмите клавишу Insert.
Ввести имя нового поля — Категория и определить его тип — Текстовый.
Закрыть окно Конструктора. При закрытии подтвердите необходимость изменить структуру таблицы.
Открыть таблицу Книги в продаже и наполнить ее содержанием, введя для каждой категории необходимые модельные данные.
Закрыть таблицу Книги в продаже.
В окне базы данных Книготорговля в ленте Создание щелкнуть на значке Конструктор запросов — откроется бланк запроса по образцу. Одновременно с ним откроется диалоговое окно Добавление таблицы.
В окне Добавление таблицы выбрать таблицу Книги в продаже и щелкнуть на кнопке Добавить. Закрыть окно Добавление таблицы.
В бланк запроса по образцу добавить следующие поля таблицы Книги в продаже: Категория, Наименование, Цена.
Для поля Цена включить сортировку по возрастанию.
Добавить в бланк Конструктора строку Групповая операция выбрать в ленте Конструктор команду Показать или скрыть - Итоги. Все поля, отобранные для запроса, получают в этой строке значение Группировка.
Для поля, по которому производится группировка записей (в нашем случае — Категория), оставить в строке Групповая операция значение Группировка.
Для поля Цена выбирать итоговую функцию Avg для определения средней стоимости изданий в категории.
Для поля Наименование выбирать итоговую функцию Count, определяющую общее количество записей, вошедших в группу. В нашем случае это количество книг, относящихся к каждой из категорий.
Закрыть бланк запроса по образцу и дать ему имя: Средняя цена книги. Запустите запрос и убедитесь, что он правильно работает.