Создание запросов
Общие указания
ЗАПРОСЫ – предназначены для отбора данных, удовлетворяющих заданным критериям (например, данные о клиентах проживающих в определенном регионе, данные о торговых операциях за какой – то период).
Результатом выполнения запроса является набор записей, собранных в таблице. В Access запросы делятся на QBE – запросы (Query by Example – запрос по образцу) и SQL1 – запросы (Structured Query Language – структурированный язык запросов), при создании которых применяются операторы и функции языка SQL.
Разберем несколько примеров:
Запросы на выборку
Запрос 1. Выбрать сведения о клиентах, проживающих в Бресте и заказавших автомобиль марки Citroen после 01.05.08. В результате запроса вывести поля ФИО, Модель, Адрес, Дата_заказа. Использовать таблицы Клиенты и Модели.
Построим QBE – запрос. Для этого в окне БД активизируем вкладку ЗАПРОСЫ и выполним щелчок по СОЗДАНИЕ В РЕЖИМЕ КОНСТРУКТОРА. В результате появится пустое окно конструктора запросов и диалоговое окно Добавление таблицы. Выделите таблицу Клиенты и выполните щелчок на кнопке ДОБАВИТЬ. Затем выделите таблицу Модели и снова выполните щелчок на кнопке Добавить. Закройте окно, щелкнув на кнопке ЗАКРЫТЬ. Имена таблиц появятся в окне проектирования запроса.
Окно конструктора запроса разделено на две части. В верхней части находятся таблицы со списками полей. Между полями Код_модели обеих таблиц проведена линия, определяющая связь между таблицами.
Разработка запроса выполняется в несколько этапов:
Добавление полей в запрос
Установка критериев отбора записей
Сортировка записей
Добавить нужные поля в бланк запроса можно путем перетаскивания их имен из списка, находящегося в верхней части окна конструктора в строку Поле бланка. Другой способ – двойной щелчок на имени поля.
Из таблицы Клиенты выберите одним из предложенных способов поля ФИО, Адрес, Дата_заказа, из таблицы Модели – поле Модель. Теперь необходимо ввести критерии отбора. Формируемый в данном примере запрос должен отбирать данные о клиентах из Бреста, заказавших после 01.05.08 г. автомобиль марки Citroen. Поэтому для перечисленных ниже полей установим в строке Условие отбора такие критерии:
Адрес =Брест
Модель =Citroen
Дата_заказа >01.05.08
Для этого встать в строку Условие отбора, в столбец Адрес, набрать = Брест. После ввода каждого критерия следует нажимать клавишу <Enter>, вследствие чего Access проверит его синтаксис и нормализует запись в соответствии с правилами записи критериев.
Аналогично ввести другие критерии.
Чтобы отсортировать фамилии клиентов в алфавитном порядке, в строке Сортировка поля ФИО выполните щелчок и в появившемся списке выберите способ сортировки по возрастанию.
Для
получения результатов по запросу
необходимо выполнить его запуск
(ЗАПРОС-ЗАПУСК), или щелкнуть по кнопке
ЗАПУСК
.
После этого формируется результирующая
таблица, которую можно сохранить под
именем (автоматически присваивается
имя Запрос1).
Для того, чтобы вернуться из результирующей
таблицы в режим создания запроса, следует
выполнить команду ВИД-КОНСТРУКТОР,
или,
нажав правую кнопку мыши, в контекстном
меню выбрать КОНСТРУКТОР ЗАПРОСОВ.
Запрос
2. Определить
максимальную и среднюю сумму заказа,
выполненную каждым продавцом. В результате
запроса вывести поля №_продавца.
Вычисляемым полям присвоить собственные
имена: Максимальная,
Средняя (дописать
в строку Поле
слова Максимальная:
и Средняя:
). Использовать
таблицы Клиенты
и
Продавцы.
После вызова окна конструктора запросов
и выполнения всех описанных выше действий
необходимо в соответствующих полях
задать статические функции Max
и Avg
(Максимум и Среднее). Статистические
функции задают в строке Групповые
операции
окна конструктора запросов. Для того
чтобы появилась эта строка, нажмите
кнопку с
греческой литерой сигма
на панели инструментов.
Собственные имена полей (Максимальная,
Средняя) нужно ввести в строку Поле
конструктора запросов
(что при этом
задать в имени поля, см. рисунок ниже):
З
апрос
с параметром
Запрос 3. Определить среднюю сумму заказа по каждому городу, название города вводить в режиме диалога Использовать таблицу Клиенты.
Оформите бланк конструктора запросов как показано на рисунке, в строку Условие отбора в квадратных скобках наберите [введите город], нажмите ENTER. Запустите запрос на выполнение. Перед тем как выполнить запрос, пользователю необходимо будет вводить город, по которому необходимо найти сумму среднего заказа.
