Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка БД .doc
Скачиваний:
3
Добавлен:
24.11.2019
Размер:
649.73 Кб
Скачать

Вычисления в запросе

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

Предположим, в таблице, содержащей сведения обо всех торго­вых операциях фирмы, необходимо определить объемы продаж, а также их средние значения для отдельных продавцов. Воспользуемся приведенной ниже таблицей (ее последний столбец содержит номер записи в таблице клиентов).

Продавец

Объем операций

Номер записи

Фунт

453,00

4

Фунт

34,89

4

Фунт

145,77

5

Корейко

89,00

4

Корейко

12,45

5

Корейко

90,50

4

Фунт

577,89

1

Эта несложная таблица позволит проиллюстрировать технику применения вычислительных возможностей Access. Для этого необходи­мо:

Создать таблицу Торговля и заполнить ее приведенными значе­ниями. Для поля Объем операций задать тип данных Денежный, а для поля Номер записи - тип Числовой с форматом Длинное целое.

Создать новый запрос на основе таблицы Торговля.

Нажать кнопку со знаком суммы на панели инструментов. В ре­зультате в бланке запроса появится новая строка с именем Группо­вая операция.

В QBE-области активизировать ячейку, которая расположена на пере­сечении строки Групповая операция и колонки Объем операций.

Открыть список функций и выберать функцию Sum. Запросу присвоить имя Запрос по таблице Торговля.

Запустить запрос.

После выполнения запроса в окне Запрос на выборку отобразят­ся все значения объемов продаж у отдельных продавцов. Такое упо­рядочение является результатом применения функции группировки.

Эта функция автоматически вставляется в каждое поле строки Групповая операция бланка запроса сразу после нажатия кнопки со знаком суммы на панели инструментов. В рассматриваемом примере с помощью этой функции проверяется содержимое полей Продавец и Но­мер записи во всех записях. Записи с совпадающими значениями объ­единяются в одну группу. Затем определяется сумма значений во всех полях Объем операций, составляющих группу. Результат помеща­ется в столбец Sum_Объем операций.

Внимание!

Функция Групповая операция применяется по умолчанию. Она служит для объединения идентичных записей и исключения дублирова­ния. Если в таблице есть поле счетчика, то все записи различны, так как каждая из них содержит уникальный номер.

Объединив в одном запросе несколько критериев и функций, можно получить ответы на следующие вопросы:

- Каков объем торговых операций у отдельного продавца?

Поле Продавец Объем операции Номер записи

-------------------------------------------------------------------------------------------------------------

Функция Group by Sum (Сумма) Count (Количество)

(Группировка)

Условия "Фунт"

отбора

Функция Count в поле Номер записи позволяет определить число записей в группе.

- Какой оборот дал каждый клиент?

Поле Продавец Объем операций Номер записи

---------------------------------------------------------------------------------

Функция Count Sum Group by

Функция Count в поле Продавец позволяет оценить в колонке Соunt_Продавец количество покупок для указанного объема продаж.

- Каков полный объем продаж?