Запросы и их типы. Создание запроса выбора в режиме конструктора и его изменение. Вычисления в запросах, страница 8

6. ФИЛЬТРЫ

Фильтр – это процедура поиска и сортировки записей. Фильтр можно представить себе как запрос, только в упрощенном варианте. Однако и фильтр, и запросы выполняют одинаковую функцию: отбор данных. Существует такие разновидности фильтров (рис. 12):

· Фильтр по выделенному

· Фильтр для · Расширенный фильтр.

Рис. 12. Типы фильтров

Фильтр по выделенному обеспечивает запуск самого простого фильтра. Критерием фильтрации служит одна или несколько выделенных ячеек в таблице или запросе, или просто та ячейка, в которой находится курсор. Пусть в одном из полей находится Цена. Если в таблице выделить ячейку с ценой, равной 25 и выполнить команду ЗаписиàФильтрàФильтр по выделенному, то в результате  в появившейся на экране таблице останутся видимыми только те записи, в которых в данном поле стоит цена 25.

Фильтрацию можно осуществлять и по блоку выделенных ячеек. При этом он не обязательно должен находиться в пределах одного поля. Необходимо только, чтобы типы данных в полях совпадали.

Команда Исключить выделенное также обеспечивает фильтрацию записей, но в данном случае критерий фильтрации обратный – скрываются записи, значения полей которых совпадают со значениями выделенных полей (ячеек).

Команда Удалить фильтр не удаляет сам  использованный критерий из памяти, а только отменяет действие фильтра. Включить режим фильтрации снова можно командой Применение фильтра.

На панели инструментов по умолчанию и в соответствующих режимах выводится кнопка, которая меняет свое имя в зависимости от ситуации: [Применение фильтра] или [Удалить фильтр].

Команда Изменить фильтр позволяет отредактировать условие отбора записей в окне обычного фильтра. По этой команде открывается окно, в котором критерий фильтрации по каждому полю представлен в виде списка. Список можно раскрыть и изменить в нем набор значений полей, или создать дополнительные списки для тех полей, которые первоначально не использовались для задания критерия фильтрации. Критерий фильтрации можно определить для любого поля, использовав соответствующий список. Например, список для поля Цена содержит значения всех цен, встречающихся в запросе. Вкладки Или позволяют создать дополнительные критерии. Объединение по Или в данном случае означает, что после фильтрации будут показаны совместно все записи, которые были отобраны по критериям на каждой из вкладок.

Наиболее простым фильтром является Фильтр для, потому что в этом случае не требуется сложных манипуляций с командами и окнами. Достаточно установить курсор на нужное поле и нажать правую кнопку мыши. Контекстное меню для этого случая показано на рис. 13.

Рис. 13. Окно Фильтр для

В поле Фильтр для надо ввести значение фильтруемого поля и нажать клавишу [Enter]. После этого фильтр приводится в действие. Отменить фильтрацию можно, как и в предыдущих случаях, командой Удалить фильтр.

Расширенный фильтр запускается командой ЗаписиàФильтрàРасширенный фильтр. Его окно, показанное на рис. 14, похоже на окно запроса в режиме Конструктора: условие отбора в этом фильтре задается точно так же, как и в запросе; режим сортировки также может быть задан путем выбора из списка.

Рис. 14. Окно расширенного фильтра

В чем же разница между запросом и расширенным фильтром? Запрос – это объект базы данных, который создается с использованием таблиц и других запросов. Он может служить основой для создания форм или отчетов. Запрос формулируется при помощи языка программирования SQL. Фильтр – это свойство объекта базы данных, которое может храниться в памяти компьютера. Расширенный фильтр по сравнению с запросом представляет собой более легкую конструкцию. В бланке фильтра отсутствует строка Вывод на экран, присутствующая в бланке запроса. Контекстное меню расширенного фильтра содержит команды, позволяющие преобразовывать расширенные фильтры в запросы и наоборот.

Вопросы для самоконтроля

1.  Понятие фильтра, его сущность и отличие от запроса.

2.  Фильтр по выделенному.

3.  Фильтр для.

4.  Расширенный фильтр.