A. Создание условного запроса
Условный запрос позволяет отобрать записи, удовлетворяющие определенным условиям.
1. Откройте окно базы данных.
2. Выберите объект Создание /блокДругие.
3. Щелкните по кнопке Конструктор Запросов.
4. На экране откроется окноДобавление таблицы. За ним размещается окноЗапрос на выборку, неактивное в данный момент.
5. Выберите из списка таблицу- или запрос-источник, на
основании которых Вы желаете создать новый запрос, и нажми
те кнопку Добавить. В неактивном окне Запрос на выборку появится список: полей выбранного объекта. Если запрос формируется на основании нескольких таблиц- или запросов-источников, повторите эту процедуру для другой таблицы или запроса-источника.
6. Нажмите кнопку Закрыть. Окно Добавление таблицызакроется, а окно Запрос становится активным. Это и есть основное окно Конструктора запросов.
7. Характеристика окна Конструктора запросов.
В верхней части окна находится схема данных запроса. Она содержит список таблиц- и запросов-источников, включенных в новый запрос, и отображает связи между ними.
В нижней части окна располагается бланк запроса. Каждая строка этого бланка выполняет определенную функцию:
Поле. В этой строке помещаются поля из таблиц- и запросов-источников, которые используются для создания нового запроса.
Имя таблицы. Строка показывает из какой таблицы- или запроса-источника выбрано данное поле.
Сортировка. В этой строке указывается тип сортировки для значений данного поля: по возрастанию (от А до Я, от большего к меньшему, от более раннего к более позднему и т.д.) или убыванию (от Я до А, от меньшего к большему и т.д.).
Вывод на экран. Строка предназначена для установки флажков в тех полях, которые должны отражаться в новом запросе на. экране. В отличие от этих полей в запрос могут включаться поля, используемые только с целью установки критерия отбора, но их вывод на экран не предполагается.
Условие отбора. В эту строку (и встроку, расположенную ниже ее) вводятся критерии отбора записей, которые ограничивают поиск записей в таблицах- и запросах-источниках.
8. Поместите поля из источников в столбцы бланка запроса. Это можно сделать следующими способами:
а) Перетащите мышью поочередно из верхней части окна в нижнюю те поля, которые Вы желаете включить в новый запрос. Каждое поле помещается в отдельный столбец бланка запроса в строке Поле.
б) Дважды щелкните имя поля в верхней части окна.
в) Щелкните в столбце в конце строки Поле и из раскрывающегося списка выберите имя поля.
9. Введите в строку Условия отбора критерии отбора.
Критерий вводится в ячейку на пересечении строки Условие отбора и того поля, по которому будет выполняться отбор записей.
10. Если необходима сортировка данных, щелкните мышью в правом углу ячейки на пересечении строки Сортировка и того поля, значения которого необходимо упорядочить. В появившемся списке выберите тип сортировки.
11. Запустите запрос командой Запрос/Запуск: (или нажмите кнопку Запуск ( ! ) на панели инструментов, или выполните команду Вид/Режим таблицы).
12. После просмотра запроса закройте окно Запрос на выборку и выполните в диалоговом режиме все действия по сохранению нового запроса.
Условия отбора.При создании запросов важно правильно сформулировать условия отбора записей из базы данных.
Простой критерий выборки. Записи выбираются по совпадающим значениям поля. Например, из поля Город необходимо выбрать значения Минск. Для этого в бланке запроса в строке Условие отбора в графе Город вводится с клавиатуры значение «Минск».
Точное несовпадение значений одного поля. Из базы выбираются все записи, кроме тех, для которых задано условие Например, необходимо выбрать все записи с полем Город, кроме тех, которые в этом поле имеют значение Минск. Для этого в строке Условия отбора в графе Город вводится выражение Not «Минск» или <> «Минск». Логический оператор Not исключает записи со значением Минск, оператор сравнения <> означает «не равно»
Неточное совпадение значений поля. Такое условие можно задавать, если не известны значения полей. Для выборки используется оператор сравнения Like(подобный). Рядом с оператором записывается образец, содержащий или точное значение например, Like«Петров», или включающий символы шаблонов, например, Like «Пет*».
Веtween... аnd ... (служит для проверки принадлежности диапазону, верхняя и нижняя граница которого соединена логическим оператором and (например, Веtween 2001 аnd 2010).
Операторы можно употреблять с текстовыми и цифровыми полями, а также с полями дат.
Объединение критериев одного поля. Если на одно поле налагается более одного условий, то условные выражения могут быть соединены с помощью операторов Оr (Или) и аnd (И).
Объединение критериев нескольких полей. В запросе может быть несколько условий отбора.В этом случае имеют место два варианта выборки записей:
а) запись выбирается только при выполнении всех условий, что соответствует логической операции И. Запрос называется И-запросом.
б) запись выбирается при выполнении хотя бы одного условия, что соответствует логической операции ИЛИ. Запрос называется ИЛИ-запросом
При построении ИЛИ-запроса каждое условие, входящее в критерий, должно располагаться на отдельной строке. При построении И-запроса каждое условие, входящее в критерий, должно располагаться в одной строке.
Условие отбора для результатов итоговых вычислений. В итоговых запросах существуют два типа критериев отбора записей.
Первый тип исключает записи, не удовлетворяющие критериям, перед выполнением итоговых вычислений. Второй тип критериев применяется к результату итоговых вычислений.
b. Создание запроса с вычисляемым полем
При построении запросов можно создавать вычисляемые поля, значения которых будут являться результатом выражений над значениями других полейтаблицы.
1. Откройте окно базы данных.
2. Выберите пункт меню Создание.
3. Вызовите окно Конструктора запросов(щелкните по кнопке Конструктор запросов),в окне Добавление таблицывыберите из списка таблицу- или запрос-источник, на основании которого будите строить запрос, нажмите кнопку Добавить → Закрыть).
4. Установите необходимые поля в бланк запроса.
5. Для построения выражения установите курсор в свободный столбец (во избежание ошибок ввода). Для построения выражения используем Построитель выражений),нажмите кнопку Построитель на панели инструментов (пункт меню Конструктор, вкладка Настройка запросов)
6. Окно построителя имеет четыре области со своими полосами прокрутки (рис. 17). В верхней области располагается создаваемое выражение и кнопки операторов. В нижней части окна находятся три области поиска необходимых для построения выражения элементов:
- левая область содержит список всех источников данных (таблиц, запросов, форм, отчетов), а также средств построения выражений (функции, константы, операторы, общие выражения). Они изображены в виде папок. Плюс: на папке обозначает, что она имеет вложенные элементы.
- средний список служит для показа элементов, входящих в выбранный объект из левого списка.
правом списке выполняется окончательный выбор элементов, которые непосредственно входят в составляемое выражение.
Левый, средний и правый списки имеют иерархическую подчиненность, и поиск начинается c левого списка.
Вставка элемента выражения в Поле ввода Построителя выражений выполняется в следующем порядке:
· В левом списке в нижней половине окна Построителя выражений раскройте двойным щелчком мыши папку, содержащую элементы нужного типа (для запросов используется элемент Таблицы).
· Выделите нужный объект (таблицу, в которой содержится поле, используемое в выражении).
· В среднем и правом списках выделите нужный элемент, щелкните его дважды мышью или нажмите кнопку Вставить для переноса его в верхнюю часть окна.
· Выберите нужную кнопку операторов и щелкните ее мышью для переноса в создаваемое выражение или наберите оператор с клавиатуры.
· Повторите те пункты, которые обеспечат дальнейшее построение выражения.
· После завершения работы над выражением нажмите
кнопку ОК. Выражение будет занесено в строку Поле бланка запроса.
7. Задайте подпись для построенного выражения: из контекстного меню выполните команду Конструктор/Страница Свойств, перейдите на вкладку Общие, в строке Подпись внесите смысловую подпись выражения.
8. Запустите запрос.
На рис. 8 приведен пример построения выражения, вычисляющего стаж работы сотрудников. Функция Now( ) - вычисляет текущую дату, функция Yеаr( ) - отделяет год от данного типа Дата/время. Функции могут быть введены вручную или с помощью папки Функции в левом списке окна Построителя выражений.