Иллюстрированный самоучитель по Microsoft Access 2002

Создание запроса из фильтра

Еще одним способом создания запроса является сохранение фильтра в виде запроса. Выше мы говорили, что фильтр используется при просмотре таблицы для отбора нужных записей. Если вы создали достаточно сложный фильтр в – окне Фильтр (Filter by Form) и знаете, что его придется использовать и в дальнейшем, можно сохранить его в базе данных в виде запроса. Для этого достаточно нажать кнопку Сохранить как запрос (Save as query) на панели инструментов при открытом окне Фильтр (Filter by Form).

  1. Откройте в режиме Таблицы таблицу "Клиенты" (Customers).
  2. Нажмите кнопку Изменить фильтр (Filter by form) на панели инструментов. Появится окно, в котором можно задать фильтр.
  3. Выберите из списка в поле Должность (ContactTitle) значение Менеджер по продажам (Sales Manager).
  4. Проверьте, как работает фильтр, нажав кнопку Применение фильтра (Apply filter) на панели инструментов. Убедившись, что фильтр работает правильно, вы можете сохранить его для дальнейшего использования.
  5. Нажмите кнопку Изменить фильтр (Filter by form) на панели инструментов еще раз, чтобы вернуться в окно определения фильтра.
  6. Нажмите кнопку Сохранить как запрос (File › Save As Query) на панели инструментов или выполните команду Файл › Сохранить как запрос (File › Save As Query). Появится диалоговое окно (рис. 4.34), в котором необходимо указать имя запроса: Менеджеры по продажам и нажать кнопку ОК.
  7. Снимите фильтр, нажав кнопку Удалить фильтр (Remove Filter).

Иллюстрированный самоучитель по Microsoft Access 2002 › Отбор и сортировка записей с помощью запросов › Создание запроса из фильтра
Рис. 4.34. Сохранение фильтра в виде запроса

Сохраненный фильтр может быть легко использован в дальнейшем, причем двумя способами.

  • Можно, снова открыв таблицу "Клиенты" (Customers), установить сохраненный фильтр. Для этого нужно сначала открыть окно определения фильтра, нажав кнопку Изменить фильтр (Filter by form). Затем нажать кнопку Загрузить из запроса (Load from Query) на панели инструментов или выполнить команду Файл › Загрузить из запроса (File › Load from Query). При этом появится диалоговое окно Применяемый фильтр (Applicable Filter) (рис. 4.35), в котором требуется выделить в списке необходимый фильтр и нажать кнопку ОК или просто дважды щелкнуть левой кнопкой мыши по названию фильтра. Чтобы применить фильтр, нужно нажать кнопку Применение фильтра (Apply filter) на панели инструментов.

    Иллюстрированный самоучитель по Microsoft Access 2002 › Отбор и сортировка записей с помощью запросов › Создание запроса из фильтра
    Рис. 4.35. Диалоговое окно Применяемый фильтр

    Замечание
    Обратите внимание, что в списке фильтров не присутствуют другие запросы, а присутствует только фильтр, сохраненный как запрос
    .

  • Выполнить запрос "Менеджеры по продажам". Для этого нужно раскрыть список запросов в окне базы данных, найти запрос "Менеджеры по продажам" и открыть его в режиме Таблицы, нажав кнопку Открыть (Open). Вы получите тот же результат, что и в первом случае, когда применяется фильтр к открытой таблице. Когда запрос открыт в режиме Таблицы или применен фильтр к таблице, нажмите кнопку Вид › Конструктор (View › Design view) на панели инструментов. Появится окно Конструктора запроса, в котором отображается запрос, соответствующий фильтру (рис. 4.36).

Обратите внимание, что хотя в режиме Таблицы запрос отображал все столбцы исходной таблицы, в бланке запроса указан только один столбец "Должность" (ContactTitle), который содержит условие отбора, и тот не включен в результат запроса. Чтобы понять, почему так происходит, откройте запрос в режиме SQL. Для этого нужно нажать кнопку Вид › Режим SQL (View › SQL View). Появится диалоговое окно, содержащее инструкцию языка SQL, которая и обрабатывается при выполнении запроса (рис. 4.37). Эта инструкция имеет вид:

SELECT *
FROM Клиенты
WHERE (((Клиенты.Должность)= "Менеджер по продажам"));

Значок * означает, что выбираются все поля из таблицы "Клиенты".

Иллюстрированный самоучитель по Microsoft Access 2002 › Отбор и сортировка записей с помощью запросов › Создание запроса из фильтра
Рис. 4.36. Запрос "Менеджеры по продажам" в режиме Конструктора

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.