Построение запроса на основе другого запроса

Выполним анализ оценок, полученных студентами по различным предметам. Например, подсчитаем число оценок (2,3,4,5) по каждому из предметов.

Создадим сначала многотабличный запрос на выборку на основе таблиц СТУДЕНТ, УСПЕВАЕМОСТЬ, ПРЕДМЕТ, ПРЕПОДАВАТЕЛЬ, формирующий сведения об оценках, полученных студентами по различным предметам. Для этого в режиме конструктора создадим схему данных запроса и бланк, как показано на рис. 33. Сохраним этот запрос с именем "оценки".

В результате выполнения этого запроса будет получена таблица, источником записей которой является таблица УСПЕВАЕМОСТЬ, а расшифровываю­щие данные выбираются из таблиц: ПРЕДМЕТ, СТУДЕНТ, ПРЕПОДАВАТЕЛЬ. Таким образом, каждая строка результата будет содер­жать информацию об одной оценке, полученной студентом по указанному в строке предмету. Число строк в таблице запроса будет равно числу строк в таблице УСПЕВАЕМОСТЬ.

Для подсчета числа различных оценок (2,3,4,5) по каждому из предметов на основе этого запроса создадим новый запрос — Число оценок. При создании нового запроса в окне Добавление таблицы (Show Table) на вкладке Запросы (Queries) выберем из списка запрос оценки. Заполним бланк запроса, как показано на рис. 34.

Результат выполнения запроса Число оценок приведен на рис. 35, где в столбце Выражение! (Ехрг!) отображено количество оценок, полученных по каждому предмету.

Рисунок 33 Многотабличный запрос об оценках студентов

Рисунок 34 Построение запроса на основе запроса оценки

 

Замечание

Нет необходимости предварительно выполнять запрос (оценки), на основе ко­торого выполняется другой запрос (Число оценок). Выполнение вложенного запроса инициируется системой при выполнении запроса, построенного на нем.

Рисунок 35 Результаты запроса, построенного на другом запросе

 

Упражнение

· Создайте на основе запроса оценки, приведенного на рис. 35, запрос  для

· анализа оценок, выставленных каждым из преподавателей. Результат запроса должен содержать количество оценок (2,3,4,5), выставленных каж­дым преподавателем. Подпись столбца с результатами выполнения груп­повой операции Count Выражение! (Ехрг1) замените на Количество оценок

· Создайте на основе запроса оценки запрос для определения числа сту­дентов, получивших 2,3,4 или 5 по предмету, задаваемому в диалоге с пользователем

· Создайте на основе запроса оценки запрос для подсчета числа студентов в группе, получивших 2 (или другую заданную оценку) по каждому предмету. Предусмотрите ввод номера группы и оценки в диалоге с пользователем

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: