Создание и изменение запроса с помощью «Конструктора запросов»
• На панели объектов выбрать Создание → Запросы→ Конструктор запросов.
• В окне Добавление таблицы выбрать одну или несколько таблиц или запросов для построения нового запроса и нажать кнопку Добавить. После добавления всех необходимых таблиц нажать кнопку Закрыть в окне Добавление таблицы. Все выбранные таблицы оказываются помещенными на верхней панели окна Конструктора запросов. Если таблицы связаны между собой, т. е. связи присутствуют явно на схеме данных, то эти связи также отображаются. Если связи на схеме данных не установлены, то Конструктор запросов автоматически устанавливает связи между таблицами, если они содержат поля, которые имеют одинаковые имена и согласованные типы.
• Затем нужно указать, какие поля из базовых таблиц будут отображаться в запросе. Включать в запрос можно поля из любой таблицы. Чтобы добавить в запрос еще одну таблицу или другой запрос, необходимо:
• Нажать кнопку Добавить таблицу на панели инструментов или выполнить команду меню Запрос, Добавить таблицу.
• В окне Добавление таблицы выбрать вкладку, содержащую требуемые объекты.
• Выбрать имя объекта, добавляемого в запрос.
• Нажать кнопку Добавить, а затем кнопку Закрыть.
Чтобы удалить базовую таблицу из запроса, необходимо выделить ее, щелкнув на любом месте в списке ее полей, и нажать клавишу [Delete].
Чтобы удалить поле из запроса, выделите нужный столбец в бланке запроса, а затем нажмите клавишу [Delete].
Запросы с параметрами
Запросы с параметрами позволяют многократно выполнить один и тот же запрос с различными значениями в условиях отбора. При выполнении такого запроса выдается диалоговое окно Введите значение параметра, в котором пользователь может ввести конкретное значение и затем получить нужный результат.
1. Создайте запрос в режиме Конструктора.
2. Чтобы определить параметр запроса, введите в строку Условие отбора слово или фразу, заключенную в квадратные скобки. Эта фраза будет выдаваться в виде приглашения в диалоговом окне при выполнении запроса.
3. Нажмите кнопку Запуск на панели инструментов, чтобы выполнить запрос. При выполнении запроса появляется диалоговое окно Введите значение параметра, в которое нужно ввести значение.
В одном запросе можно ввести несколько параметров. При выполнении такого запроса для каждого из параметров будут поочередно выводиться диалоговые окна Введите значение параметра в том порядке, в котором параметры перечислены в бланке запроса.
Создание запроса из фильтра
Еще одним способом создания запроса является сохранение фильтра в виде запроса. Для этого:
1. Откройте таблицу в режиме Таблицы.
2. Нажмите кнопку Изменить фильтр на панели инструментов. Появится окно, в котором можно задать фильтр.
3. Выберите из списка в поле любое значение.
4. Проверьте, как работает фильтр, нажав кнопку Применение фильтра на панели инструментов. Убедившись, что фильтр работает правильно, вы можете сохранить его для дальнейшего использования.
5. Нажмите кнопку Изменить фильтр на панели инструментов еще раз, чтобы вернуться в окно определения фильтра.
6. Нажмите кнопку Сохранить как запрос на панели инструментов или выполните команду Файл, Сохранить как запрос. Появится диалоговое окно, в котором необходимо указать имя запроса и нажать кнопку ОК.
7. Снимите фильтр, нажав кнопку Удалить фильтр.
В виде запроса можно также сохранить так называемый Расширенный фильтр. Расширенный фильтр используется в том случае, если требуется задать сложные критерии отбора и сортировки записей. Чтобы создать расширенный фильтр для открытой таблицы, необходимо выполнить команду Записи, Фильтр, Расширенный фильтр. При этом появляется окно расширенного фильтра, которое очень напоминает окно Конструктора запроса, однако панель инструментов очень сильно отличается от панели инструментов Конструктора запросов. Например, нельзя добавить еще одну таблицу (расширенный фильтр строится только для одной таблицы) или выполнить группировку записей. На панели инструментов есть только две важные кнопки: Применение фильтра и Сохранить как запрос. В бланке фильтра отсутствует строка, содержащая флажки включения поля в запрос. Это означает, что фильтр не влияет на состав столбцов в результирующей таблице — всегда отображаются все столбцы, фильтруются только записи. Однако критерии отбора записей могут быть установлены сколь угодно сложные. Задаются они по тем же правилам, что и в запросах.