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

Тема: Применение функций при создании запросов

ЦЕЛЬ:

Вы должны знать результат выполнения функций:

Avg, Min, Max, Sum, Count, Format, Len, Right, Left,IIf

Вы должны уметь:

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

  • создавать запросы с использованием групповых операций в режиме Конструктора.

Порядок работы

  1. Ознакомьтесь с теоретической частью работы. Выполните упражнения, используя файл базы данных Учебная база данных ХХХ.mdb (где ХХХ – Ваша фамилия), который находится E:\Мои документы\YYY (где YYY – имя Вашей рабочей папки).

  2. Выполните практическое задание.

  3. Домашнее задание. Перепишите вопросы в конспект, ответьте на них.

(Дополнительная литература: [1,с 249..253])

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Создание итоговых запросов в режиме Конструктор

Для создания запроса с использованием групповых операций необходимо:

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

  2. Выполнить команду ВидГрупповые операции. В бланке запроса появится строка Групповая операция, в которой для всех полей записано Группировка.

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

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

Функция

Описание

Sum

вычисляет сумму всех значений заданного поля в каждой группе

Avg

вычисляет среднее арифметическое всех значений заданного поля в каждой группе

Min

возвращает наименьшее значение, найденное в заданном поле внутри каждой группы

Max

возвращает наибольшее значение, найденное в заданном поле внутри каждой группы

Count

возвращает число записей, найденное в заданном поле внутри каждой группы, отличное от Null (пустое значение)

В качестве примера на рисунке показан бланк запроса с групповой операцией подсчета числа учащихся, поступивших в 2002, 2003 и 2004 году, с минимальным и максимальным значением среднего балла поступления для каждого года.

Выполните упражнение 1 (по инструкции выше)

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

Использование функций в запросе

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

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

Функция

Описание

Date()

формирует текущую дату, не требует аргументов

Month(«number»)

выделяет из даты месяц, аргумент «number» - поле типа Дата/время или дата. Например, результатом работы Month(15.03.05) будет число 3

Year(«number»)

выделяет из даты год, аргумент «number» - поле типа Дата/время или дата. Например, результатом работы Year (15.03.05) будет число 2005

Day(«number»)

выделяет из даты день, аргумент «number» - поле типа Дата/время или дата. Например, результатом работы Day (15.03.05) будет число 15

Formatnumber»;формат)

преобразует числовое значение в формат даты, времени, денежный или любой другой формат, определяемый пользователем. Например, результатом работы Format([Сведения]![Дата Рождения];"mm.yyyy") будет месяц и год рождения

Left(строка; длина)

возвращает указанное число знаков от левого края строки. Например, результатом работы Left(“благодарить”;5) будет буквосочетание “благо”

Right(строка; длина)

возвращает указанное число знаков от правого края строки. Например, результатом работы Right(“благодарить”;6) будет буквосочетание “дарить”

Функция

Описание

Len(строка)

возвращает количество знаков в строке. Например, результатом работы Len(“благодарить”) будет число 11

IIf(логическое выражение;з1;з2)

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

з1 - значение или выражение, которое будет возвращено, если выражение будет оценено как Истина.

з2 - значение или выражение, которое будет возвращено, если выражение будет оценено как Ложь.

Выполните упражнение 2 (по инструкции)

Создайте запрос Ф2 на основе данных таблиц Начисления и Сведения (Фамилия, Имя, Дата рождения, Премия, Стипендия) с вычисляемым полем Сумма итого (Премия+Стипендия). В запросе отобразить данные по учащимся, которые родились в декабре

Инструкция:

  1. Выбрать вкладку Запросы.

  2. Нажать кнопку Создать.

  3. В диалоговом окне Новый запрос выбрать Конструктор, нажать кнопку ОК.

  4. В окне Добавление таблицы добавить таблицы Начисления и Сведения.

  5. Переместить поля Фамилия, Имя, Дата рождения, Премия, Стипендия из списка полей в бланк запроса.

  6. Установить курсор в пустую ячейку строки Поле.

  7. Вызвать Построитель выражений.

  8. Составить выражение, используя данные таблицы Начисления и нажать ОК.

  9. Переименовать Выражение 1 в Сумма итого.

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

Условие отбора по полю Дата рождения:

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

Выполните упражнение 3 (самостоятельно)

Создайте запрос Ф3 на основе данных таблиц Сведения и Начисления (Фамилия, Имя, Отчество, Дата рождения, Премия) с вычисляемым полем Дополнение (Премия, увеличенная на 35%). В запросе отобразите данные об учащихся (с помощью функции Day), которые родились в первой декаде.

Выполните упражнение 4 (по инструкции)

Создайте запрос Ф4 на основе данных таблицы Сведения (Фамилия, Имя, Дата рождения) с вычисляемым полем Возраст (Количество прожитых лет).

Инструкция:

  1. Выбрать вкладку Запросы.

  2. Нажать кнопку Создать.

  3. В диалоговом окне Новый запрос выбрать Конструктор, нажать кнопку ОК.

  4. В окне Добавление таблицы добавить таблицы Сведения.

  5. Переместить поля Фамилия, Имя, Дата рождения из списка полей в бланк запроса.

  6. Установить курсор в пустую ячейку строки Поле.

  7. Вызвать Построитель выражений.

  8. Составить выражение, используя данные таблицы Сведения и функцию Date и нажать ОК.

  1. Переименовать Выражение 1 в Возраст

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

  3. Сравнить результаты работы запроса с образцом

Значения поля Возраст – количество прожитых дней

Для изменения формата поля (отображения количества лет) следует воспользоваться функцией Format

  1. Перейти в режим Конструктора

  2. Для поля Возраст вызвать Построитель выражения

  3. Изменить формулу

Замечание:

Для поля типа Дата/Время определен следующий формат: dd.mm.yyyy