Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Access МП копия.doc
Скачиваний:
11
Добавлен:
20.08.2019
Размер:
15.44 Mб
Скачать

Упражнение 6.4.2. Создание запроса с вычисляемым полем

Пусть необходимо найти записи о предметах, в которых общее число часов по предмету не совпадает с суммой часов лекций и практик. Для решения этой задачи рассчитаем разность между часами практики (ПР) и часами лекций (ЛЕК). В ответ включим только те записи, для которых эта разность не равна нулю.

  1. Создайте в режиме конструктора запрос на выборку для таблицы ПРЕДМЕТ. Перетащите в бланк запроса поля НП, ПР, ЛЕК, ЧАСЫ.

  2. В вычисляемом поле в строку Условие отбора введите <>0 (не равно 0).

  3. Поле ввода выражения система по умолчанию формирует имя вычисляемого поля – выражение 1: (ExprN:). Это имя вставится перед выражением [ПР]-[ЛЕК]. Для изменения имени установите курсор мыши в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстном меню выберите Свойства и в строку Подпись поля введите новое имя поля – ЧАСЫ не равны ПР+ЛЕК. Имя поля может быть исправлено также непосредственно в бланке запроса.

  4. Для формирования сложных выражений в вычисляемом поле целесообразно использовать построитель выражений. Построитель позволяет выбрать необходимые в выражении имена полей из таблиц, запросов, форм, знаки операций, функции. Удалите выражение в вычисляемом поле и используйте построитель для его формирования.

Вызовите построитель выражений нажав на панели конструктора запросов кнопку Построить или Построить в контекстном меню (курсор мыши должен быть установлен в строке Поле вычисляемого поля)

  1. В левой части окна Построитель выражений (рис 6.4.1.).Выберите таблицу ПРЕДМЕТ, на которой построен запрос. Справа отобразится список ее полей. Последовательно выберите нужные поля, нажимая кнопку Вставить, и вставляя знаки операций. При этом в верхней части окна сформируется выражение. Нажмите ОК.

  2. Сохраните запрос под именем - Разность часов по предмету.

Рис. 6.4.1. Окно построителя выражений при формировании вычисляемого поля

Упражнение 6.4.3. Конструирование запроса с функцией Count

Определим фактическое число студентов в группе.

  1. Создайте в режиме конструктора запрос на выборку для таблицы СТУДЕНТ.

  2. Из списка таблицы СТУДЕНТ перетащите в бланк запроса поле НГ- номер группы. По этому полю будет производится группировка.

  3. Перетащите в бланк запроса поле НС, по которому будет вычисляться функция Count для подсчета числа студентов в группе.

  4. Нажмите кнопку Групповые операции или выполните команду Вид|Групповые операции. В бланке запроса появляется строка Групповая операция, в которой для всех полей записана Группировка.

  5. Замените слово Группировка в столбце НС на Count. Для этого вызовите список и выберите эту функцию.

  6. Замените подпись поля Count-НС на Фактическое число студентов. Для ввода этой подписи в бланке запроса установите курсор мыши на поле НС и нажмите правую кнопку. В контекстно – зависимом меню выберите Свойства. В окне Свойства поля наберите в строке Подпись Фактическое число студентов.

  7. Сохраните запрос под именем – Фактическое число студентов.

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

Многотабличный запрос позволяет сформировать записи результата путем объединения взаимосвязанных записей из таблицы базы данных и включение нужных полей из них. Многотабличный запрос осуществляет объединение данных, которые на этапе проектирования были разделены на множество объектов, отвечающих требованиям нормализации и, соответственно, отсутствуют дублируемости данных в базе. В результате выполнения запроса формируется таблица, содержащая повторяющиеся данные, причем обеспечивается удобное восприятие их пользователем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]