Формирование запросов для поиска и отбора данных

Запросы используются для отбора данных из нескольких таблиц и создания на их основе форм и отчетов. Наиболее широко применяемыми являются запросы на выборку, которые позволяют выводить данные полей нескольких таблиц, осуществлять выборку данных по определенным условиям и создавать вычисляе­мые поля.

Для формирования запроса на выборку необходи­мо открыть вкладку запросы и нажать кнопкуСоздать. В диалоговом окне НОВЫЙ ЗАПРОС следует выбрать режим Конструктор и щелкнуть по кнопкеОК. В появившемся диалоговом окне ДОБАВЛЕНИЕ ТАБЛИЦЫ на вкладке таблицы следует выбрать таблицу, которая будет участво­вать в формировании запроса, и нажать кнопкуДобавить.Если необходимо, аналогичным образом можно добавить и другие таблицы. Затем, после нажатия кнопкиЗакрыть, на экране будет отображено окно запроса в режиме Конст­руктор. В верхней части окна располагаются таблицы, уча­ствующие в запросе (если были установлены связи, они также будут отображены), а в нижней части, которая назы­вается Бланк запроса, задаются условия отбора. Каждый столбец Бланка запроса представляет собой одно из полей, участвующих в запросе; для него могут быть заданы пара­метры в следующих строках:

v Поле — указывается имя поля, участвующего в запро­се. Для того чтобы внести требуемое поле в эту строку, можно воспользоваться одним из следующих способов:

· установить указатель мыши на нужное поле в таб­лице, расположенной в верхней части окна, нажать левую кнопку мыши и «перетащить» его в пустое место строки Поле;

· дважды щелкнуть мышью по требуемому полю в таблице в верхней части окна;

· щелкнуть мышью по пустому месту в строке Поле и выбрать требуемое поле из раскрывающегося списка;

v Имя таблицы — автоматически отображаетсяимятаблицы, из которой выбрано поле для запроса;

v Сортировка — используется для указания в резуль­тирующей таблице порядка сортировки или ее отмены, которые выбираются из раскрывающегося списка в данной строке;

v Вывод на экран — позволяет отображать (если установлен флажок) или не отображать (флажок не установлен) поле в результирующей таблице;

v Условие отбора — задается необходимое условие, что позволяет выводить в результирующей таблице только записи, удовлетворяющие данному условию (если в этой строке задать условия для нескольких полей сразу, то в результирующей таблице будут вы­ведены записи, удовлетворяющие всем условиям од­новременно). При задании условия отбора могут использоваться знаки операций сравнения, знаки логических операций и символы шаблона;

v или — задается дополнительное условие. В результи­рующей таблице будут выведены записи, удовлетво­ряющие хотя бы одному из заданных условий в строке Условие отбора или в строке или (строк или может быть несколько).

Просмотреть результаты выполнения запроса можно, выбрав команду Запрос–3апуск или Вид–Режим таблицы. Результаты будут выведены в виде таблицы в Режиме таб­лицы. Если результаты выполнения запроса не удовлетво­ряют требованиям пользователя, для корректировки струк­туры запроса следует вновь перейти в режим Конструктор, выбрав команду Вид–Конструктор. Созданный запрос необ­ходимо сохранить так же, как сохраняются таблицы. Для просмотра результатов выполнения запроса из окна БД сле­дует выделить требуемый запрос и нажать кнопкуОткрыть,а при необходимости внесения изменений в запрос — кнопку Конструктор.

Для выполнения расчетов используется Вычисляемое поле, которое создается путем ввода вы­ражения в пустую ячейку поля в бланке запроса. Для его создания можно пользоваться Построителем выражений, который запускается кнопкой Построить, причем важно соблюдать синтаксис в записи выражения. Например, зная цену (поле Цена, руб.) и количество (поле Кол-во, шт.), можно рассчитать сумму: Сумма: [Цена, руб.]*[Кол-во, шт.].

Если приходится часто выполнять однотипный запрос на вы­борку, изменяя при этом значение какого-либо атрибута в условии отбора, то можно использовать за­прос с параметрами. Запрос с параметрами не требует каждый раз вносить изменения в бланк запроса; вместо этого выводится при­глашение пользователю ввести условия отбора.

Для каждого поля, которое предполагается использовать как параметр, в конструкторе запросов надо ввести в ячейку строки «Условие отбора» текст приглашения, заключенный в квадратные скобки. Это приглашение будет выводиться при запуске запроса. Текст подсказки должен отличаться от имени поля, но может включать его. При запуске этого запроса на исполнение будет появляться окно с подсказкой, в которое надо ввести требуемое значение пара­метра. В качестве параметров может быть использовано не одно, а не сколько полей. В этом случае для каждого поля, которое предполагается использовать как параметр, в ячейку строки «Условие отбора» вводится текст приглашения, заключенный в квадратные скобки. Эти приглашения будут последовательно выводиться при запуске запроса.