Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТОДИЧКА_Access.doc
Скачиваний:
20
Добавлен:
08.02.2015
Размер:
2.93 Mб
Скачать

5.3. Функции для даты и времени

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

Название функции

Действие функции

Dау(дата)

Возвращает значение дня месяца в диапазоне от 1 до 31

Моnth(дата)

Возвращает значение месяца года в диапазоне от 1 до 12

Yeаr(дата)

Возвращает значение года в диапазоне от 100 до 9999

Weekday(дата)

По умолчанию возвращает целое число от 1 (Воскресенье) до 7 (Суббота), соответствующее дню недели

Ноur(дата)

Возвращает целое число от 0 до 23, представляющее значение часа

DateРart(интервал, дата)

Возвращает номер квартала или номер недели в зависимости от того, какой код интервала задан: "q" - для определения квартала (значение от 1 до 4), "ww" - для определения номера недели в году (значение от 1 до 53)

Date()

Возвращает текущую системную дату

Примечание: в качестве аргумента функции используется название поля, содержащего дату.

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

Выражение

Результаты отбора

Date()

Отбираются записи, в которых указана текущая дата

Between Date( ) And DateAdd("m", 3, Date( ))

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

< Date( ) - 30

Записи, значение которых отстоит более чем на 30 дней от текущей даты

Year([ДатаРазмещения]) = 1999

Отбор по полю «ДатаРазмещения» заказов, сделанных в 1999

DatePart("q", [ДатаРазмещения]) = 4

Отбор по полю «ДатаРазмещения» заказов четвертого квартала

DateSerial(Year ([ДатаРазмещения]), Month([ДатаРазмещения]) + 1, 1) - 1

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

Year([ДатаРазмещения]) = Year(Now()) And Month([ДатаРазмещения]) = Month(Now())

Отбор по полю «ДатаРазмещения» заказов текущего года и месяца

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

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

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

Можно задать вычисления над любыми полями таблицы и сделать вычисляемое значение новым полем в наборе записей запроса.

Можно использовать множество встроенных в Accessфункций.

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

Можно создать новое текстовое поле как результат соединения текстовых полей или символьных констант. Можно создать строковую константу, заключив текст в двойные или одиночные кавычки. В качестве оператора соединения используется символ &.

Для построения в выражениях можно использовать следующие операции: стандартные арифметические (+, -, *, /) и еще ряд специальных:

/- делит первое арифметическое выражение на второе

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

^- Возводит первое арифметическое выражение в степень, задаваемую вторым арифметическим выражением.

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

&- Создает текстовую строку как результат присоединения второй строки к концу первой. Если один из операндов является числом, то он преобразуется в строку символов.

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

Общий формат вычисляемого поля выглядит следующим образом:

Имя вычисляемого поля, двоеточие и выражение.

Например: Стоимость: [Цена] * [Количество]

Примечание: Функция ЕСЛИ вAccess находится в категории Управление и выглядит как IIf.