Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Создание перекрестного запроса ⇐ ПредыдущаяСтр 3 из 3
Перекрестные запросы позволяют произвести группировку по двум и более параметрам и представить результат в двухмерной таблице. Перекрестные запросы служат для более компактного отображения информации. В перекрестном запросе отображаются результаты статистических расчетов (такие, как суммы, количество записей, средние значения), выполненных по данным из одного поля. Эти результаты группируются по двум наборам данных в формате перекрестной таблицы. Первый набор выводится в левом столбце и образует заголовки строк, а второй - выводится в верхней строке и образует заголовки столбцов. Создадим перекрестный запрос, в котором в строках выводятся фамилии врачей, в столбцах - дни приема, в результирующих ячейках подсчитывается количество приемов в каждый из дней. В режиме Конструктора создайте новый запрос, добавьте таблицу «Журнал».
Перетащите поля «Дата приема», «ФИО Врача», «ФИО Пациента» в первые три столбца бланка. Выберите команду меню Запрос→ Перекрестный. Заголовок окна запроса Запрос1: на выборку изменится на Запрос! перекрестный запрос. Кроме того, в бланк запроса будут добавлены строки Перекрестная таблица и Групповая операция, в которую во всех столбцах автоматически вводится операция Группировка. Выберите в списке ячейки Перекрестная таблица столбца «Дата приема» значение Заголовки столбцов. Для столбца «ФИО Врача» - Заголовки строк. Выберите в списке ячейки Групповая операция столбца «ФИО Пациента» значение Count. В ячейке Условие отбора – Значение (Рис. 36). Рис. 32. Перекрестный запрос в режиме Конструктора
Рис. 36. Результат выполнения перекрестного запроса
9 Запрос к связанным таблицам
С помощью запросов можно обрабатывать информацию из связанных таблиц. Если связующие поля имеют одинаковые тип и имя, то ACCESS автоматически связывает поля из объединенных таблиц. Связь обозначается линией. В начале необходимо определить параметры связи. Укажите на соединительную линию и выберите команду ВИД\ПАРАМЕТРЫ ОБЪЕДИНЕНИЯ. В результате откроется диалоговое окно, в котором предлагаются 3 опции для определения параметров связи. Выберите одну из опций и нажмите ОК. Рис. 37. Определение параметров связи
Отбуксируйте соответствующие поля обеих таблиц в бланк запроса. Для просмотра результата выполните запрос. При проектировании и конструировании запроса важнейшим условием является правильное представление о том, как идет объединение записей таблиц при формировании результата. Для этого надо знать, в каких отношениях находятся таблицы запроса и как определена связь между ними: установлены ли для связи таблиц параметры обеспечения целостности и какой способ объединения задан для связи. Возможно создание итоговых запросов для связанных таблиц. Для этого используются команды ВИД\ГРУППОВЫЕ ОПЕРАЦИИ и ВИД\ИМЕНА ТАБЛИЦ, и для каждого поля выбрать соответствующую функцию.
ЗАДАНИЕ
Для спроектированной базы данных необходимо разработать 15 запросов, представляющих основные изученные типы запросов (с учетом запросов в функциональной модели, разработанной в лабораторной работе № 2).
ПРИМЕРЫ ФОРМУЛИРОВОК ЗАПРОСОВ (к схеме на данных на рисунке 39)
Рисунок 39 – Схема данных
Запросы с критериями поиска: 1. Выбрать предметы, по которым общее число часов изучения не более 100 и есть лекции, а также выбрать предметы, по которым общее число часов больше 150 и число семестров изучения не более двух. Результирующее отношение должно содержать наименование предмета, общее число часов по предмету, количество лекционных часов и число семестров. 2. Получить информацию об успеваемости студентов Боярской и Маковой. 3. Необходимо получить информацию об оценке студента Бондаренко по информатике. 4. Вывести информацию, содержащую ФИО и оценку студентов 101 группы, если их оценка ≥ 4. Запросы с параметрами: 1. Необходимо получить информацию об оценке студента по заданному предмету. 2. Получить информацию об успеваемости студента по его ФИО. 3. Вывести количество студентов в конкретной группе. 4. По заданному названию кафедры вывести ее код и телефонный номер. 5. Определить ФИО преподавателя и его ученое звание по табельному номеру.
Вычисляемые поля в запросах: 1. Выбрать из таблицы ПРЕДМЕТ записи, содержащие информацию о предметах, в которых число часов лекций больше числа часов практики. 2. Выбрать из таблицы ГРУППА записи, содержащие информацию о группах, в которых минимальный суммарный балл по группе больше 120. 3. Создать запрос, формирующий в таблице ПРЕПОДАВАТЕЛЬ дополнительный столбец с информацией, включающей в себя данные об ученых степени и звании каждого преподавателя. 4. Создать запрос, формирующий из таблицы СТУДЕНТ таблицу, содержащую только два столбца, в одном из которых заключается информация о группе студента, а во втором – его ФИО и год рождения. 5. Создать запрос, формирующий из таблицы КАФЕДРА таблицу, содержащую только два столбца, в одном из которых заключается код, название и телефон каждой кафедры, а во втором – ФИО ее заведующего.
Запросы с агрегирующими функциями: 1. Подсчитать средний проходной балл в группе. 2. Определить число студентов в группе 3. Найти студентов, имеющих максимальный проходной балл. 4. Найти количество ассистентов на кафедре математики. 5. Найти среднее количество студентов в группах.
Запросы к связанным таблицам: 1. Вывести ФИО преподавателей, которые преподают у групп с номером > 200 и предмет, который они преподают. 2. По заданной фамилии преподавателя найти ФИО заведующего кафедрой, на которой он работает. 3. Вывести ФИО студентов, имеющих оценки выше 3 баллов. 4. Вывести всех преподавателей, имеющих фамилию, начинающуюся на букву “С”, и преподаваемый ими предмет. 5. По вводимому названию предмета получить информацию о количестве семестров его преподавания.
Запросы на удаление: 1. Из таблицы СТУДЕНТ удалить всех студентов, у которых проходной балл меньше 4, 5. 2. Удалить информацию о всех ассистентах с кафедры математика. 3. Из таблицы ПРЕПОДАВАТЕЛЬ удалить информацию о всех преподавателях с кафедры физкультуры. 4. Из таблицы ГРУППА удалить информацию о 202-й группе. 5. Из таблицы ПРЕДМЕТ удалить информацию о предметах, по которым нет лекций.
Запросы на обновление: 1. В таблице ПРЕПОДАВАТЕЛЬ присвоить всем ассистентам ученое звание старших преподавателей. 2. В таблице ГРУППА заменить количество студентов > = 30 на 25. 3. В таблице ИЗУЧЕНИЕ заменить средний балл по предмету больший 4 на 5. 4. В таблице ПРЕДМЕТ заменить название предмета информатика на программирование. 5. Заменить адрес всех студентов, проживающих на улице Космонавтов, на пр-т Мира, 43.
Перекрестные запросы: 1. Сформировать двумерную таблицу, где в столбцах будет располагаться номер группы, в строках – количество студентов, а на пересечении – средний проходной балл студентов. 2. Сформировать двумерную таблицу, где в столбцах будет располагаться номер студента, в строках – его ФИО, а на пересечении – адрес студента. 3. Сформировать двумерную таблицу, где в столбцах будет располагаться код кафедры, в строках – ФИО преподавателей на букву “С”, а на пересечении – ученая степень. 4. Сформировать двумерную таблицу, где в столбцах будет располагаться код кафедры, в строках – название кафедры, а на пересечении – ее телефон. 5. Сформировать двумерную таблицу, где в столбцах будет располагаться вид занятий, в строках – название предмета, а на пересечении – количество часов.
Контрольные вопросы
1. Что такое запрос? 2. Какие способы создания запросов вы знаете? 3. Как при создании запроса установить условия отбора? 4. Как используются выражения в запросе? 5. Как сортируются данные в запросе? 6. Как осуществить поиск данных в диапазоне значений? 7. Как присвоить запросу имя и сохранить его? 8. Как создать запрос на базе связанных таблиц? 9. Как закрыть поле в запросе? 10. Как суммировать данные в запросе? 11. Как установить параметры в запросе? 12. Как создать отчет на основе запроса?
|
Последнее изменение этой страницы: 2019-10-05; Просмотров: 300; Нарушение авторского права страницы