В этом разделе на конкретных примерах рассматривается технология конструирования запросов различного вида. Дано описание конкретных действий пользователя в процессе конструирования запросов. Подробно описан процесс конструирования однотабличного и многотабличного запроса показано формирование вычисляемых полей, использование групповых операций и параметров запроса. Рассмотрено обновление таблиц с помощью запроса. Кроме того, в конце раздела приведен пример решения задачи на основе нескольких запросов.
Конструирование однотабличного запроса на выборку
Рассмотрим процесс конструирования однотабличного запроса на выборку на примере получения информации из таблицы ПРЕДМЕТ базы данных Учебный процесс".
Использование логических операций в условии отбора
Пусть надо выбрать предметы, по которым общее число часов изучения не более 100, и есть лекции, а также выбрать предметы, по которым общее число часов больше 150 и число семестров изучения не более двух. Результат должен содержать наименование предмета (НП), общее число часов по предмету (ЧАСЫ), количество лекционных часов (ЛЕК) и число семестров (ЧС).
|
|
Выберем конструктор запросов. Окно запроса на выборку в режиме конструктора <Ймя запроса>: запрос на выборку (Select Query) и диалоговое окно Добавление таблицы (Show Table). В диалоговом окне выберем таблицу ПРЕДМЕТ и нажмем кнопку Добавить (Add). Выбранная таблица будет отображена в области схемы данных запроса. Закроем окно Добавление таблицы (Show Table).
В окне конструктора перетащим из списка полей таблицы ПРЕДМЕТ поля НП, ЧАСЫ, ЛЕК и ЧС в столбцы бланка запроса в строку Поле (Field).
Рисунок 15
Сформулированные в задаче условия требуют формирования следующего логического выражения:
(ЧАСЫ<=100 AND ЛЕК<>0) OR (ЧАСЫ>150 AND ЧС<3)
Здесь лек<>0 (число лекций не равно нулю), соответствует заданному в задаче условию выбрать предметы, в которых есть лекции.
Условия из первых скобок запишем в соответствующих полях ЧАСЫ и ЛЕК первой строки Условия отбора (Criteria). Между условиями в разных полях одной строки выполняется логическая операция and. Условия из вторых скобок запишем в соответствующих полях ЧАСЫ и ЧС второй строки Условие отбора (Criteria). Между условиями, записанными в разных строках, выполняется логическая операция or.
Выполним запрос, нажав на панели конструктора запросов кнопку Запуск (Run), или кнопку Вид (View). На экране появится окно запроса в режиме таблицы с записями из таблицы ПРЕДМЕТ, отвечающими заданным условиям отбора.
Сохраним запрос, нажав кнопку Сохранить (Save) и задав нужное имя запроса.