Запросы, так же, как и фильтры, служат для отбора записей по заданным критериям. Но в отличие от инструмента "Фильтр" запрос – это компонент БД, допускающий многократное использование.
Запросы обеспечивают доступ сразу к множеству полей и записей одной и более таблиц, отображают данные в заданном порядке, а также производят вычисления с использованием отобранных записей.
Для построения запроса в Access могут быть использованы мастер запросов или конструктор запросов. Исходными компонентами для проектирования запросов могут служить таблицы, уже существующие запросы или те и другие одновременно.
Создание запроса обычно начинается с команды ЗАПРОС/СОЗДАТЬ/КОНСТРУКТОР, далее в окне “Добавление таблицы” следует выбрать исходные компоненты нового запроса (таблицы и/или запросы) и нажать последовательно кнопки "Добавить" и "Закрыть". В возникшем окне бланка запроса следует занести поля результатов запроса (строка "Поле"), необходимость вывода на экран полей результатов запроса (строка "Вывод на экран"), критерии выборки записей (строка "Условия отбора"), критерий упорядочивания результатов отбора (строка "Сортировка") (пример бланка запроса см. на рис.10).
Запуск запроса на выполнение - команда ЗАПРОС/ЗАПУСК (кнопка ). Созданный запрос можно использовать и в дальнейшем, для этого нужно ему присвоить имя и сохранить, при этом имя запроса не должно повторять имя таблицы. Этот сохраненный запрос можно в дальнейшем и модифицировать.
Критериями могут быть как простейшее точное совпадение значений, так и более сложные условия для работы с текстом, числовыми величинами, датами или комбинациями типов данных.
|
Примеры некоторых типичных выражений, используемых для формирования условий в запросах, приведены в табл. 3.
Часто возникают ситуации, когда необходимо задать условия для нескольких полей таблицы или несколько условий для одного поля. Такие запросы называются И-запросами (если запись выбирается в случае выполнения всех условий) или ИЛИ-запрос (если запись выбирается при выполнении хотя бы одного из указанных условий). Логическое условие может содержать функции, операторы сравнения, операторы Or, And, Not и скобки для изменения порядка выполнения выражения.
Таблица 3 Примеры формирования запросов
ПОЛЕ | ВЫРАЖЕНИЕ | РЕЗУЛЬТАТ |
Фамилия | Сидоров | Извлекает записи, содержащие в поле “Фамилия” текст “Сидоров” |
Страна | Not Украина или <> Украина | Извлекает все записи, кроме содержащих в поле “Страна” текст “Украина” |
Город | Москва or Самара | Выбор клиентов из Москвы или Самары |
Фамилия | Like “Р” | Извлекает все фамилии, начинающиеся на "Р". Like - это оператор неточного совпадения. |
Цена | >=13500 | Извлекает записи о товарах с ценой не менее 13500 |
Дата заказа | Between #3.1.2004#and#31.1.2004# | Извлекает записи о заказах, сделанных между 3 и 31 января 2004 года. # - элемент синтаксиса, так выделяются только даты. |
Телефон | (095)278-???? | Извлекает записи о клиентах, московские телефоны которых начинаются с 278- |