Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
85
Добавлен:
15.04.2015
Размер:
20.12 Mб
Скачать

2.3. Анализ и изменение данных с помощью запросов

2.3.1. Использование в запросах вычисляемых полей

В результате выполнения запроса MS Access позволяет не только выбирать из таблицы содержащуюся в ней информацию, но также производить вычисления и отображать результат вычислений в результирующей таблице. Для расчетов с использованием выражений, определяемых пользователем, требуется создать новое вычисляемое поле прямо в бланке запросов. Вычисляемое поле создается с помощью выражения, которое вводится в пустой столбец строки Поле в бланке запроса (см. рис.3.2) или создается с помощью построителя выражений (рис.3.6).

Рис.3.6. Окно построителя выражений

Построитель выражений откроется после нажатия кнопки Построить на панели инструментов.

В верхней части окна построителя расположено поле выражений. В средней части окна построителя находятся кнопки с часто используемыми операторами. При нажатии на одну из этих кнопок построитель вставит соответствующий оператор в текущую позицию поля выражений. В нижней части окна построителя находятся три поля:

    • в левом поле выводятся папки, содержащие таблицы, запросы, формы, объекты базы данных, встроенные и определенные пользователем функции, константы, операторы и общие выражения;

    • в среднем поле задаются определенные элементы или типы элементов для папки, заданной в левом поле. Например, если выбрать в левом поле Операторы, то в среднем поле появится список всех типов операторов Microsoft Access;

    • в правом поле выводится список значений (если они существуют) для элементов, заданных левым и средним полями. Например, если выбрать в левом поле Операторы и тип оператора Арифметические - в среднем, то в правом поле будет выведен список всех арифметических операторов.

Например, чтобы с помощью построителя выражений создать выражение увеличивающее рейтинг клиентов на 10 %, выполните следующие действия:

  1. Запустите построитель выражений.

  2. В левом нижнем поле построителя выберите папку “Клиенты”. В нижнем среднем поле дважды щелкните на поле Рейтинг, чтобы вставить его в поле выражения. В результате появится выражение [Клиенты]![Рейтинг].

  3. Затем в левом нижнем поле выберите папку Операторы, в среднем - папку Арифметические. В нижнем правом поле дважды щелкните на знаке умножения, чтобы вставить его в поле выражений, а затем введите число 1,1.

  4. Закончив создание выражения, нажмите кнопку OK.

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

2.3.2. Итоговые запросы

Другим типом расчетов, которые могут выполняться в запросе, является подсчет итоговых значений. Например, для числового поля таблицы можно вычислить среднее значение или сумму значений для всех или отобранных записей, можно подсчитать количество записей, возвращаемых запросом, и т.д. Итоговый запрос создается как и обычный запрос в окне «Конструктор запросов». В этих запросах используются статистические функции:

    • Avg() – вычисляет арифметическое среднее набора чисел, содержащихся в указанном поле запроса;

    • Count() – вычисляет количество непустых записей, возвращаемых запросом;

    • Sum() – возвращает сумму набора значений, содержащихся в заданном поле;

    • Max() – возвращает максимальное значение из набора, содержащегося в указанном поле;

    • Min() – возвращает минимальное значение из набора, содержащегося в указанном поле.

Использование статистических функций для расчета итоговых значений тесно связано с применением групповых операций в запросе. Групповые операции позволяют задать группы, для которых выполняются вычисления. При создании итогового запроса, находясь в конструкторе запросов, выберите Вид/Групповые операции или нажмите кнопку Групповые операции на панели инструментов. В бланке запроса появится новая строка с наименованием Групповая операция. В этой сроке вы должны указать тип выполняемого вычисления.

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

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

В качестве примера рассмотрим создание итогового запроса для получения значений максимального заказа, минимального заказа и суммы заказов, сделанных клиентами из города Бреста. Для этого выполните следующие действия:

  1. Создайте запрос на выборку. Добавьте в бланк запроса таблицы ”Клиенты” и ”Заказы”.

  2. Добавьте в бланк запроса поле Фамилия и поле Сумма заказа три раза.

  3. Выберите команду Вид/Групповые операции для добавления строки Групповая операция в бланк запроса.

  4. Для поля Фамилия оставьте в этой строке значение Группировка. Для первого поля Сумма заказа из раскрывающегося списка в строке Групповая операция выберите Max, для второго – Min, для третьего – Sum (рис.3.7).

  5. Добавьте в бланк запроса поле Город клиента. Для ввода условия выборки необходимо в строке Групповая операция изменить значение Группировка на Условие.

  6. ВстрокеУсловие отбора введите требуемое условие: Брест (рис.3.7).

Рис.3.7. Бланк итогового запроса

  1. Для просмотра результатов выборки нажмите кнопку Запуск (рис.3.8).

Рис.3.8. Выборка с итоговыми вычислениями по полю Сумма заказа

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

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

Соседние файлы в папке МЕТОДИЧКИ