Аксесс запросы
Параметрический запрос Access - Базы данных Access
Параметрический запрос Access
В этой статье поговорим на тему «Параметрический запрос Access«. В предыдущих примерах выражение в условие отбора вводилось в бланке запроса. При этом чтобы задать новое значение в условие отбора, нужно повторно открыть запрос в режиме конструктора и ввести его. При решении практических задач значительно удобнее вводить выражение в условие отбора в процессе выполнения запроса в диалоге с пользователем, не переходя в режим конструктора. Обеспечить такой диалог можно с помощью параметра запроса. Имя параметра запроса задается в строке Условия отбора (Criteria) в квадратных скобках. При выполнении запроса это имя появится в диалоговом окне Введите значение параметра (Enter Parameter Value).
- Замените в условии отбора рассмотренного запроса (см. рис. 4.8) название месяца март на имя параметра ― [Название месяца].
- Выполните запрос. Открывшееся диалоговое окно (рис. 4.9) позволит ввести значение параметра запроса ― Название месяца.
- В запросе может быть определено несколько параметров. Например, для отбора записей по двум месяцам в условии отбора вычисляемого поля запишите два параметра, связанных логической операцией OR — [Название месяца] OR [Еще одно название месяца].
- Для определения числового интервала используйте параметры в операторе Between [Номер первого месяца периода] and [Номер последнего месяца периода].
Параметры запроса могут быть использованы не только в выражениях условий отбора, а и для ввода значений операндов в вычисляемых полях.
- Создайте в режиме конструктора запрос на выборку для таблицы ТОВАР. Перетащите в бланк запроса поля НАИМ_ТОВ и ЦЕНА.
- Для увеличения цены на заданный процент в вычисляемое поле запишите выражение с параметром запроса — [На сколько процентов увеличить?] (рис. 4.10):ЦЕНА+ЦЕНА*[На сколько процентов увеличить?]/100
Далее читаем «Групповые операции в запросах«.
Введите поисковое слово и нажмите Enter
Х
Уроки по Microsoft Access
Уроки по Microsoft Access
Вычисляемые поля в запросах Access
База данных Access Автосалон
accesshelp.ru
Создание формы на основе запроса в Access
На очереди тема «Создание формы на основе запроса в Access». Если в базе данных уже имеется запрос, в котором выбраны таблицы, нужные для получения результата, определены поля, которые необходимо включить в результат, параметры, сделаны вычисления, целесообразно создавать форму на основе такого запроса.Создание формы на основе запроса в Access дело не хитрое. В созданном ранее запросе из таблицы НАКЛАДНАЯ выбираются все накладные, по которым производилась отгрузка в заданном месяце. В вычисляемом поле месяца задано имя параметра — [Номер месяца] и запрос сохранен под именем Накладные месяца (рис. 5.11).
Групповые операции в запросах Access
Сегодня поговорим на тему «Групповые операции в запросах Access». Групповые операции в запросах Access позволяют выделить группы записей с одинаковыми значениями в указанных полях и вычислить итоговые данные для каждой из групп по другим полям, используя одну из статистических функций. Статистические функции применимы, прежде всего, к полям с типом данных Числовой, Денежный, Дата/время.В Access предусматривается девять статистических функций:
- Sum — сумма значений некоторого поля для группы;
- Avg — среднее от всех значений поля в группе;
- Max, Min — максимальное, минимальное значение поля в группе;
- Count — число значений поля в группе без учета пустых значений;
- StDev — среднеквадратичное отклонение от среднего значения поля в группе;
- Var — дисперсия значений поля в группе;
- First и Last — значение поля из первой или последней записи в группе.
Результат запроса с использованием групповых операций содержит по одной записи для каждой группы. В запрос, прежде всего, включаются поля, по которым производится группировка, и поля, для которых выполняются статистические функции. Кроме этих полей в запрос могут включаться поля, по которым задаются условия отбора.Рассмотрим конструирование однотабличного запроса с групповой операцией на примере таблицы ПОСТАВКА_ПЛАН.
Запрос с функцией Sum
Задача. Определите, какое суммарное количество каждого из товаров должно быть поставлено покупателям по договорам. Все данные о запланированном к по-ставке количестве товара указаны в таблице ПОСТАВКА_ПЛАН.
- Создайте в режиме конструктора запрос на выборку из таблицы ПОСТАВКА_ПЛАН.
- Из списка таблицы перетащите в бланк запроса поле КОД_ТОВ ― код товара. По этому полю будет производиться группировка записей таблицы.
- Перетащите в бланк запроса поле КОЛ_ПОСТ, по которому будет подсчитываться суммарное количество каждого из товаров, заказанных во всех договорах.
- Выполните команду Итоги (Totals) из группы Показать или скрыть (Show/Hide). В бланке запроса появится новая строка Групповая операция (Total) со значением Группировка (Group By) в обоих полях запроса.
- В столбце КОЛ_ПОСТ замените слово Группировка (Group By) на функцию Sum. Для этого вызовите список и выберите эту функцию. Бланк запроса примет вид, показанный на рис. 4.11.
- Для отображения результата запроса (рис. 4.12) щелкните на кнопке Выполнить (Run) в группе Результаты (Results).
- Замените подпись поля Sum-КОЛ_ПОСТ на Заказано товаров. Для этого перейдите в режим конструктора, в бланке запроса установите курсор мыши на поле КОЛ_ПОСТ и нажмите правую кнопку. В контекстном меню выберите Свойства (Properties). В окне Свойства поля (Field Properties) введите в строке Подпись (Caption) — Заказано товаров. Для открытия окна свойств может быть выполнена команда Страница свойств (Property Sheet) в группе Показать или скрыть (Show/Hide).
- Сохраните запрос под именем Заказано товаров.
- Чтобы подсчитать количество товаров, заказанных в каждом месяце, выполните группировку по двум полям: КОД_ТОВ и СРОК_ПОСТ, в котором хранится месяц поставки (рис. 4.13).
- Чтобы подсчитать количество товаров, заказанных в заданном месяце, предыдущий запрос дополните вводом параметра запроса в условие отбора (рис. 4.14).
Запрос с функцией Count
Задача. Определите, сколько раз отгружался товар по каждому из договоров. Факт отгрузки фиксируется в таблице НАКЛАДНАЯ.
- Создайте запрос на выборку на основе таблицы НАКЛАДНАЯ.
- Из списка полей таблицы НАКЛАДНАЯ перетащите в бланк запроса поле НОМ_ДОГ. По этому полю должна производиться группировка.
- По сути, смысл задачи сводится к подсчету в таблице числа строк с одинаковым номером договора, поэтому неважно по какому полю будет вычисляться функция Count. Перетащите в бланк запроса любое поле, например опять НОМ_ДОГ.
- Выполните команду Итоги (Totals) из группы Показать или скрыть (Show/Hide). Замените слово Группировка (Group By) в одном из столбцов с именем НОМ_ДОГ на функцию Count. Бланк запроса примет вид, показанный на рис. 4.15.
- Сохраните запрос под именем Число отгрузок по договорам. Выполните запрос. Результат запроса показан на рис. 4.16.
Для закрепления смотрим видеоурок:
Следующая тема: Запросы на изменение Access.
accesshelp.ru