Добавил:
Меня зовут Катунин Виктор, на данный момент являюсь абитуриентом в СГЭУ, пытаюсь рассортировать все файлы СГЭУ, преобразовать, улучшить и добавить что-то от себя Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / Методички / Методичка Патлань_Киселева.doc
Скачиваний:
13
Добавлен:
02.08.2023
Размер:
971.26 Кб
Скачать

7.2. Запросы с применением вычислений

Access позволяет выполнять в запросах вычисления двух типов – встроенные и пользовательские. Они применяются соответственно в итоговых запросах и запросах с вычисляемыми полями. При этом в обоих случаях в результирующей таблице отображаются данные, отсутствующие в исходной.

Итоговые запросы - это запросы, выполняющие вычисления в группах записей, они создаются командой ВИД/ГРУППОВЫЕ ОПЕРАЦИИ.

Наиболее употребительные типы групповых операций:

Sum - определение суммы значений по полю;

Avg - среднее значение по полю;

Min - минимальное значение по полю;

Max - максимальное значение по полю;

Count – количество записей;

First – первое значение;

Last – последнее значение.

В примере рис. 7.2 отображён бланк итогового запроса, вычисляющего сумму затрат каждого клиента.

Рис. 7.2. Бланк запроса, использующего групповые операции

Результат запуска этого запроса – на рис. 7.3.

Рис. 7.3. Результат выполнения запроса, использующего групповую операцию Sum

При разработке запроса с вычисляемыми полями новое вычисляемое поле создается прямо в свободном поле бланка запроса с помощью выражения. Выражение содержит формулы, в которые могут входить поля, константы, встроенные функции, связываемые операторами (+,-,/,*,&,<,>,<>,And,Or,Not,Like, круглые скобки). Для построения выражения удобно использовать окно "Построитель выражений", оно вызывается кнопкой на стандартной панели инструментов. В окне можно выбрать источник данных (таблицы, запросы, функции, константы), поля в этих источниках, конкретные математические и логические операторы, функции, необходимые для построения выражения.

Пример окна "Построитель выражений" для вычисления стоимости покупки партии одного товара, показан на рис. 7.4. Здесь стоимость покупки партии товара вычисляется как произведение цены товара из таблицы "ТОВАРЫ" и количества проданного товара из таблицы "ЗАКАЗЫ И ПРОДАЖИ".

Рис. 7.4. Пример окна "Построитель выражений"

Синтаксис встроенных функций Access похож на синтаксис, используемый Excel. Они разделены на категории и могут содержать разное количество аргументов. На рис. 7.5 в правом поле окна "Построитель выражений" виден список функций категории Дата/время, а в поле выражения выбрана функция Now(), возвращающая текущую дату, она не содержит аргументов.

Рис. 7.5. Окно "Построитель выражений", в котором выбирается встроенная функция Now().

Выражение может содержать и вложенные функции. На рис. 7.6 приводится пример выражения, построенного для начисления наценки в 5% на покупку, совершённую в декабре. Здесь используются встроенные функции IIf (ЕСЛИ) и Month (МЕСЯЦ), вложенная в аргумент - условие функции IIf.

Рис. 7.6.Пример выражения с вложенными функциями

Результат реализации этого выражения отображён на рис. 7.7. Видно, что для клиента, совершившего покупку в декабре (нижняя запись), производится наценка на сумму покупки.

Рис. 7.7. Запрос, реализующий выражение с вложенными функциями

Результаты вычислений не запоминаются в исходной таблице (как и обычно результаты запросов), они выполняются каждый раз при запуске запроса, поэтому и отражают текущее состояние базы данных. Обновить вычисленные результаты вручную невозможно.