Построение запросов для отбора нужных данных
Построение запросов для отбора нужных данных
Одна из разновидностей запроса на выборку – фильтр на основе формы. Базой для него может служить любая заранее подготовленная форма. В качестве примера рассмотрим форму Приборы, которая показана на рис. 4.29. Она взята из реальной рабочей практики и содержит 173 записи, как видно из окна номера записи (пример такого окна показан в нижней части рис. 4.37).
Рис. 4.29
Чтобы произвести фильтрацию по полю Приборы, щелкните по кнопке
с помощью которой можно изменить фильтр, и все окна формы очистятся. Форма готова к работе в режиме фильтра (см. рис. 4.30).
Выберите поле, где вы зададите условия отбора, которому должны удовлетворять записи, включаемые в итоговый набор записей. Установите два критерия: Назначение (в данном случае приборы для контроля кислотности) и Фирмы (нас интересуют лишь те приборы, которые выпускаются фирмой ORION).
Сначала задайте условие для поля Назначение. Справа от него находится стрелка прокрутки. Щелкните по ней, и на фоне формы появится список назначений (см. рис. 4.31). Выберите опцию Измерение кислотности, и этот критерий будет зафиксирован в поле.
Точно так же задайте в поле Фирмы позицию ORION. В результате в двух полях формы появятся установленные вами условия, или критерии отбора (см. рис. 4.32). Это будет соответствовать логической схеме «И».
Если вы хотите сохранить записи, отобранные в результате запроса, щелкните по кнопке
(Сохранить в виде запроса) на панели инструментов. На экране появится окно Сохранить в виде запроса, в котором предлагается имя сохраняемого запроса. Либо согласитесь с предлагаемым названием, либо введите новое. Во втором случае программа может сообщить, что запрос с таким названием уже существует. Тогда замените предыдущий запрос. Кнопка возникает на панели инструментов только на данном этапе работы, поэтому щелкнуть по ней надо именно здесь.
Теперь можно выполнить подготовленный запрос. Для этого щелкните по кнопке
(Применение фильтра). В полях формы появятся значения полей одной из отобранных записей (см. рис. 4.33). Это будет та же самая форма Записи, но содержащая все данные (см. поле номера записи), которые были отобраны на основе заданного фильтра. В поле номера появившейся записи вы увидите ее номер и общее количество отобранных (отфильтрованных) записей.
Переходя от одной записи к другой, вы «листаете» их так же, как делали это в начальной форме. Запрос, который вы только что сохранили, заносится в виде таблицы под заданным вами именем в окне базы данных во вкладку Запросы. При необходимости вы можете ввести на данном этапе работы новые условия отбора, уменьшая количество итоговых записей. Это делается с помощью описанных выше кнопок, расположенных на панели инструментов.
Предположим, вы хотите отфильтровывать записи последовательно, постепенно задавая дополнительные условия в новых полях и уменьшая число отобранных записей. В таком случае повторяйте описанные выше действия, начиная с щелчка по кнопке
(Изменить фильтр).
Чтобы вернуться к исходному состоянию формы и подготовить ее к обработке нового запроса на выборку, щелкните по кнопке
(Удалить фильтр) на панели инструментов.
Итак, повторим основные правила отбора (фильтрации) записей с помощью формы:
• отбор может осуществляться по нескольким условиям, как задаваемым одновременно (схема «И»), так и взаимоисключающим (схема «ИЛИ»);
• если одновременно задать различные критерии отбора в нескольких полях (схема «И»), фильтр будет возвращать только те записи, в которых каждое из полей отвечает всем указанным условиям;
• предположим, вы хотите указать несколько значений, которые запись, включаемая в результирующий набор, может содержать в одном поле (схема «ИЛИ»). Выберите вкладку ИЛИ (ее ярлычок находится в левом нижнем углу окна на рис. 4.32). Фильтр будет возвращать записи, которые содержат в полях:
– все значения, указанные во вкладке Найти;
– все значения, указанные в первой вкладке ИЛИ;
– все значения, указанные во второй вкладке ИЛИ, и т. д.Данный текст является ознакомительным фрагментом.