Формирование запросов для поиска и отбора данных
Запросы используются для отбора данных из нескольких таблиц и создания на их основе форм и отчетов. Наиболее широко применяемыми являются запросы на выборку, которые позволяют выводить данные полей нескольких таблиц, осуществлять выборку данных по определенным условиям и создавать вычисляемые поля.
Для формирования запроса на выборку необходимо открыть вкладку запросы и нажать кнопкуСоздать. В диалоговом окне НОВЫЙ ЗАПРОС следует выбрать режим Конструктор и щелкнуть по кнопкеОК. В появившемся диалоговом окне ДОБАВЛЕНИЕ ТАБЛИЦЫ на вкладке таблицы следует выбрать таблицу, которая будет участвовать в формировании запроса, и нажать кнопкуДобавить.Если необходимо, аналогичным образом можно добавить и другие таблицы. Затем, после нажатия кнопкиЗакрыть, на экране будет отображено окно запроса в режиме Конструктор. В верхней части окна располагаются таблицы, участвующие в запросе (если были установлены связи, они также будут отображены), а в нижней части, которая называется Бланк запроса, задаются условия отбора. Каждый столбец Бланка запроса представляет собой одно из полей, участвующих в запросе; для него могут быть заданы параметры в следующих строках:
v Поле — указывается имя поля, участвующего в запросе. Для того чтобы внести требуемое поле в эту строку, можно воспользоваться одним из следующих способов:
· установить указатель мыши на нужное поле в таблице, расположенной в верхней части окна, нажать левую кнопку мыши и «перетащить» его в пустое место строки Поле;
· дважды щелкнуть мышью по требуемому полю в таблице в верхней части окна;
· щелкнуть мышью по пустому месту в строке Поле и выбрать требуемое поле из раскрывающегося списка;
v Имя таблицы — автоматически отображаетсяимятаблицы, из которой выбрано поле для запроса;
v Сортировка — используется для указания в результирующей таблице порядка сортировки или ее отмены, которые выбираются из раскрывающегося списка в данной строке;
v Вывод на экран — позволяет отображать (если установлен флажок) или не отображать (флажок не установлен) поле в результирующей таблице;
v Условие отбора — задается необходимое условие, что позволяет выводить в результирующей таблице только записи, удовлетворяющие данному условию (если в этой строке задать условия для нескольких полей сразу, то в результирующей таблице будут выведены записи, удовлетворяющие всем условиям одновременно). При задании условия отбора могут использоваться знаки операций сравнения, знаки логических операций и символы шаблона;
v или — задается дополнительное условие. В результирующей таблице будут выведены записи, удовлетворяющие хотя бы одному из заданных условий в строке Условие отбора или в строке или (строк или может быть несколько).
Просмотреть результаты выполнения запроса можно, выбрав команду Запрос–3апуск или Вид–Режим таблицы. Результаты будут выведены в виде таблицы в Режиме таблицы. Если результаты выполнения запроса не удовлетворяют требованиям пользователя, для корректировки структуры запроса следует вновь перейти в режим Конструктор, выбрав команду Вид–Конструктор. Созданный запрос необходимо сохранить так же, как сохраняются таблицы. Для просмотра результатов выполнения запроса из окна БД следует выделить требуемый запрос и нажать кнопкуОткрыть,а при необходимости внесения изменений в запрос — кнопку Конструктор.
Для выполнения расчетов используется Вычисляемое поле, которое создается путем ввода выражения в пустую ячейку поля в бланке запроса. Для его создания можно пользоваться Построителем выражений, который запускается кнопкой Построить, причем важно соблюдать синтаксис в записи выражения. Например, зная цену (поле Цена, руб.) и количество (поле Кол-во, шт.), можно рассчитать сумму: Сумма: [Цена, руб.]*[Кол-во, шт.].
Если приходится часто выполнять однотипный запрос на выборку, изменяя при этом значение какого-либо атрибута в условии отбора, то можно использовать запрос с параметрами. Запрос с параметрами не требует каждый раз вносить изменения в бланк запроса; вместо этого выводится приглашение пользователю ввести условия отбора.
Для каждого поля, которое предполагается использовать как параметр, в конструкторе запросов надо ввести в ячейку строки «Условие отбора» текст приглашения, заключенный в квадратные скобки. Это приглашение будет выводиться при запуске запроса. Текст подсказки должен отличаться от имени поля, но может включать его. При запуске этого запроса на исполнение будет появляться окно с подсказкой, в которое надо ввести требуемое значение параметра. В качестве параметров может быть использовано не одно, а не сколько полей. В этом случае для каждого поля, которое предполагается использовать как параметр, в ячейку строки «Условие отбора» вводится текст приглашения, заключенный в квадратные скобки. Эти приглашения будут последовательно выводиться при запуске запроса.