Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МетБДПос(Лобова)!!.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
4 Мб
Скачать
☆

Вычисляемые поля.

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

Выражение вводится в бланк запроса в пустую ячейку строки Поле. Затем, после нажатия клавиши <Enter> или перевода курсора в другую ячейку, перед выражением в этой ячейке добавляется имя поля Выражение1. Имя поля можно заменить на более информативное. Имя отделяется от выражения двоеточием.

Например: Выражение!: [Цена]*[Количество],

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

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

  • Функции даты и времени. Используются при обработке дат и времени. Возвращают дату и время полностью или частично (год, месяц, день); функция Date () возвращает системную дату, функция Month (дата) выделяет месяц из значения поля, содержащего дату, и возвращает целое число из интервала от 1 до 12, обозначающее месяц года. Функция MonthName (месяц[;имя]) преобразует числовое обозначение месяца в имя, указывающее полное (имя=Ложь) или сокращенное (имя=Истина) название месяца. MonthName ([СРОК_ПОСТ]; Истина) возвращает сокращенное название месяца. По умолчанию берется значение ложь (название не сокращается).

  • Функции обработки текста. Используются при работе с символьными строками. К этой группе функций относится, Например, функция Format, которая служит для преобразования любого допустимого выражения (в том числе числового значения, даты) в символьную строку. Format (выражение [; формат [; первый_день_недели[; первая_неделя_года]]]). Если аргумент выражение указан в формате даты, то аргумент формат задает форматирование даты. Символы формата даты приведены в табл. 6.1.

Символы формата даты Таблица 6.1.

Символ форматирования

Возвращаемое значение

dddd

Название дня недели

ddd

Сокращенное название дня недели

dd

Номер дня месяца

ww

Номер недели года

mmmm

Полное название месяца

mm

Номер месяца

mmm

Краткое название месяца

уу

Две последние цифры года

уууу

Четыре цифры года

Format ([НАКЛАДНАЯ]![ДАТА_ОТГР];"mmmm") – возвратит полное название месяца; Format ([накладная]![дата_отгр];"mm") — возвратит номер месяца.

Если необходимо выделить не один элемент из даты, запишите в функции Format несколько символов форматирования, разделяя их знаком "\". Например, Format ([НАКЛАДНАЯ]![ДАТА_ОТТР]; "mmmm\ yyyy" ) Возвратит полное название месяца и год. После знака "\" ставится пробел.

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

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

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

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

Для записи выражения в вычисляемом поле или формирования условия отбора удобно использовать Построитель выражений, который вызывается кнопкой панели инструментов . Курсор мыши предварительно должен быть установлен в ячейке ввода выражения.

Допустим, необходимо выбрать все накладные, по которым производилась отгрузка в заданном месяце. В таблице накладная дата отгрузки хранится в поле дата_отг тип Дата/время.

Построим запрос, который отберет накладные для заданного месяца, через вычисляемое поле с выражением месяц: Month(накладная!дата_отг). Название месяца указывается в условии отбора образец на Рисунок 6.5. Выполним запрос - Запуск Рисунок 6.6. Сохраните полученный результат под именем Пример (накладная).

Рисунок 6.5. Запрос на выборку накладной по номеру месяца

Рисунок 6.6. Результат выполнения запроса

Создадим запрос, на выборку накладных выписанных в январе месяце. В конструкторе выберем поле НОМ_НАКЛ и КОД_СК в третье поле введем вычисляемое поле через «Построитель выражения» (Рисунок 6.7.) Введем в верхнее поле название столбца месяц: для построения вычисляемого поля воспользуемся встроенными функциями. Функции Встроенные функции Дата/времяMonthName Вставить (MonthВставить (Таблицы НакладнаяДАТА_ОТГВставить))ОК В результате получим:

Рисунок 6.7. Выбор функции в построителе выражений

Замечание При появлении дополнительных выражений «Выражение» MonthName («month»; «abbreviate»), все что подчеркнуто можно выделить и удалить кнопкой Delete расположенной на клавиатуре.

Рисунок 6.8 Запрос с функцией выделения из даты полного названия месяца.

В третьем столбце в строке «условие отбора»: внесем название месяца «январь». Нажмите .В результате получит таблицу рисунок 6.9.

Рисунок 6.9. Результат отбора