Запрос на основе нескольких взаимосвязанных таблиц 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Запрос на основе нескольких взаимосвязанных таблиц



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

Последовательность действий

  1. В окно запроса добавить необходимые таблицы
  2. Установить между таблицами необходимые связи
  3. Сформировать бланк запроса (см. рис. 4.3.)
  4. Выполнить запрос

5.

Рис.4.3. Бланк многотабличного запроса с параметрами для ввода ФИО и НП

При выполнении запроса Access запросит ввести значения параметров через окна диалог (рис. 4.4.)

Рис. 4.4. Диалоговые окна для ввода параметров

Microsoft Access выводит эквивалентную инструкцию SQL для запроса, созданного в режиме конструктора(Вид/Режим SQL):

SELECT СТУДЕНТ.ФИО, Предмет.НП, Успеваемость.ОЦЕНКА

FROM (СТУДЕНТ INNER JOIN Успеваемость ON (СТУДЕНТ.НС = Успеваемость.НС) AND (СТУДЕНТ.НГ = Успеваемость.НГ)) INNER JOIN Предмет ON Успеваемость.КП = Предмет.КП

WHERE (((СТУДЕНТ.ФИО)=[Фамилия и инициалы студента]) AND ((Предмет.НП)=[Наименование предмета]));

Замечания. При использовании в условии отбора имен полей разных таблиц, помимо имени самого поля необходимо указать имя таблицы. Например, для обращения к подюЧАСЫ таблицы ИЗУЧЕНИЕ необходимо в условии отбора использовать следующее выражение :[ИЗУЧЕНИЕ]![ЧАСЫ].

Использование вычисляемых полей в запросах

В запросе над полями могут производиться вычислеия. Результат вычисления образует вычисляемое поле в таблице, созданной по запросу и не создает дополнительных полей в таблицах базы данных.

Рассмотрим технологию создания запроса с вычисляемым полем на примере таблицы ПРЕДМЕТ.

Пример 4.4. Пусть необходимо найти ошибочные записи о предмете, в которых общее число часов по предмету не совпадает с суммой часов лекций и практики.

Для решения этой задачи нам понадобиться значение выражения [ ЧАСЫ ]-[ ПР ] -[ ЛЕК ]. Результатом запроса должны быть только те записи, для которых значение этого выражения не равны нулю.

Порядок выполнения действий поясняется рис.4.5.

Рис.4.5. Запрос с вычисляемым полем

Microsoft Access выводит эквивалентную инструкцию SQL для запроса, созданного в режиме конструктора(Вид/Режим SQL):

SELECT Предмет.НП, Предмет.ПР, Предмет.Лек, Предмет.Часы, [Часы]-[ПР]-[Лек] AS Выражение1

FROM Предмет

WHERE ((([Часы]-[ПР]-[Лек])<>0));

Замечание. Для формирования сложного выражения в вычисляемом поле целесообразно использовать построитель выражений.

Порядок создания запроса с использованием групповых операций



Поделиться:


Последнее изменение этой страницы: 2016-12-16; просмотров: 219; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.168.172 (0.004 с.)