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

3. Построение условий для выбора записей

Для задания критериев выбора записей следует выбрать строку Условие отбора бланка запроса и ввести в нужный столбец выражение для отбора записей. При вводе выражения можно использовать построитель выражений (выбор строки Построить из контекстного меню). При построении выражений используются математические, логические, строковые (Like, & - конкатенация) операторы, операторы сравнения, а также вспомогательные операторы Between…And; In; Is Null/Not Null. На рисунке 5 представлен результат выборки данных с заданными критериями отбора данных в строке Условия отбора окна конструктора.

Заметим, что при составлении выражений для фильтров удобно пользоваться оператором In для задания списка возможных значений. Например, для выбора пациента с идентификационным номером 1получим запрос, представленный на рис. 23.

Рис. 23. Результат выбора по заданному условию

Более сложные варианты отбора представляются с помощью соединителя Between. На рис. 24 пред­ставлены бланк и результаты запроса с более сложными условиями выбора запи­сей.

Рис. 24. Пример задания условий отбора для дат

4. Упорядочение данных и группировка полей запроса

Строка Сортировка бланка запроса управляет порядком расположения записей в результирующей таблице. Для каждого выбранного поля можно установить с помощью переключателя критерий упорядочения по возрастанию (Ascending) или по убыванию (Descending).

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

Группировка позволяет получить вычисляемую информацию о подгруппах записей таблицы. Чтобы сгруппировать записи в запросе по каким либо полям таблицы и выполнить групповые вычисления необходимо активизировать строку Групповая операция (Total). Для этого необходимо выполнить одно из двух действий:

  • выбрать в режиме конструктора запросов команду основного меню Вид Групповая операция;

  • щелкнуть на кнопке Групповые операции (Totals) (с пиктограммой греческой буквы ) на панели инструменотов Конструктора.

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

  • Группировка – группирование записей для статистических вычислений.

  • Статистические функции – математичекие операции или операции выбора над данными группы.

  • Выражение – групповые вычисления на базе вычисляемого поля.

  • Условие – условия отбора записей для групповых вычислений.

Все перечисленные категории групповых опрераций кроме статистических функций состоят их одной опции. Для статистичесикх функций подсчет итоговых значений выполняется для одной из девяти функций:

  • Count – количество непустых значений поля в группе строк итоговой таблицы;

  • Max – наибольшее значение в поле;

  • Minнаименьшее значение в поле;

  • Avg – среднее значение в поле;

  • Sum – сумма значений в поле;

  • StDev - стандартное отклонение значений в поле;

  • Var - дисперсия распределений значений в поле;

  • First - значение поля в первой записи таблицы или запроса;

  • Last - значение поля в последней записи таблицы или запроса.

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

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

Запрос 1. Определить общее число сделок, суммарный объем сделок (суммарное количество единиц товаров) и максимальную стоимость одной сделки.

По результатам выполнения запроса (рис. 25) можно видеть, что она представлена только одной записью, т.к. итоговые вычисления проводятся над всеми записями таблиц.

Рис. 25. Выполнение запроса с группировкой

Запрос 2. Для каждого наименования товара определить количество сделок, а также суммарную стоимость покупок и общее количество единиц купленного товара.

На рис. 26 приведен результат выполнения запроса 2. В данном запросе выражение вычисляет итоговую сумму покупок для каждого вида товаров в отдельности. В Запросе 1 с помощью выражения определялась максимальная стоимость одной сделки среди всех сделок по всем видам товаров.

Рис. 26. Результат выполнения Запроса 2

Запрос 3. Для каждого клиента определить число сделок и стоимость покупок отдельных видов товаров (рис. 27).

Рис. 27. Результат выполнения Запроса 3

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

Запрос 4. Для каждого наименования товара, кроме товара «сахар», определить суммарную стоимость покупок. (рис. 28).

Рис. 28. Результат выполнения Запроса 4

Запрос 5. Для каждого наименования товара определить суммарную стоимость покупок, если она не превышает значения 1000 у.е . (рис. 29).

Рис. 29. Результат выполнения Запроса 5

Запрос 6. Для каждого наименования товара определить число сделок, выполненных позднее 01.02.2002 (рис.30).

Рис. 30. Результат выполнения Запроса 6

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]