Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




Идентификаторы объектов

III. Функции даты и времени

Функция используется для возвращения значения в точку вызова. Значение, возвращаемое функцией, определяется ее типом, например, функция Now() возвращает дату и время часов компьютера. Синтаксически функция выделяется круглыми скобками, следующими сразу за ее идентификатором (именем функции). Многие функции требуют наличия аргументов, которые записываются в этих скобках через точку с запятой при обращении к функции. Функции можно использовать для создания нового выражения или функции. Перед знакомством с функциями Access для работы с датами и временем сделаем несколько замечаний об именах объектов Access, т.к. они очень часто используются для построения условий отбора и при вычислениях.

Любой объект Access имеет имя, по которому его можно однозначно идентифицировать в некоторой системе объектов. Кроме обозначения коротким именем объекта, идентификатор можно обозначить и полным именем. Полное имя объекта является составным, т.к. состоит из двух коротких имен, разделяемых восклицательным знаком или точкой. Первое – имя класса объектов (таблицы, запроса, формы или отчета), второе – собственное имя объекта. Из-за использования указанных разделителей имена объектов не должны содержать символов «!» и «.». Символ «!» используется в Access для разделения имен таблиц и имен полей, например,

[Поставщики]![Адрес]

Microsoft Access хранит значения дат и времени как десятичные числа длиной восемь байт. Чтобы сообщить Access о том, что вы вводите дату и время, заключите значение в символы числа (#). Для указания конкретной даты используйте нотацию, которая вам кажется наиболее удобной. Например, #15 апреля 2008#, #15/04/08# и #15-апр-2008# определяют одну и ту же дату. Точно так же #5:30 PM# и #17:30# определяют время «семнадцать часов тридцать минут».

Access предоставляет несколько функций, которые могут оказаться полезными при задании условий отбора для дат и времени. Ниже приведены описания основных функций для работы с датами и временем (таблица 1).


Таблица 1 – Описание функций даты и времени

Функция Описание
Day(дата) Возвращает значение дня месяца в диапазоне от 1 до 31
Year(дата) Возвращает значение года в диапазоне от 100 до 9999
Month(дата) Возвращает значение месяца года в диапазоне от 1 до 12
Weekday(дата) По умолчанию возвращает целое число от 1 (Воскресенье) до 7 (Суббота), соответствующее дню недели
Hour(дата) Возвращает целое число от 0 до 23, представляющее значение часа
Now(0 Возвращает дату и время часов компьютера.
Date() Возвращает текущую системную дату
DateDiff() Находит разницу между двумя датами

 

Приведем примеры использования функций для работы с датами и временем (таблица 2).

Таблица 2 – Примеры применения функций

Поле Выражение Описание
Дата доставки < Date()- 30 Использует функцию Date для отображения заказов, сделанных ранее, чем 30 дней назад.
Дата отправки Year([Дата отправки])=2008 Использует функцию Year для отображения заказов, сделанных в 2008 году.
Дата доставки Year([Доставка]![Дата доставки])=Year(Date()) And Month([Доставка]![Дата доставки])=Month(Date()) Использует функции Year и Month, а также оператор And для отображения доставок текущего года и месяца.
Разница между датами DateDiff(«d»; #12.04.2007#; #28.04.2007#) = 16 Находит разницу между двумя датами («d» – в днях, “ww”– в неделях, “m” – в месяцах, “yyyy” – в годах и др.), в данном случае разница должна составлять 16 дней.

ЗАДАНИЕ 11

С помощью функция даты и времени выясним, у каких поставщиков доставка осуществляется с февраля по май.

1. Откройте таблицу Поставщики в режиме просмотра.

2. Щелкните по вкладке Главная на ленте команд, перейдите в группу Сортировка и фильтр и щелкните стрелку после кнопки дополнительно.

3. Щелкните по опции Расширенный фильтр, перед вами откроется окно фильтра.

4. Введите данные представленные на рисунке 16.

Рисунок 16 – Условия отбора по полю «Срок доставки»

5. Примените фильтр.

6. Результат представлен на рисунке 17.

Рисунок 17 – Результат применения фильтра

 

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

Month([Срок доставки])>=2 and Month([Срок доставки])<5

Обратите внимание на данную запись! В скобках функции Month() указывается имя поля, по которому нам необходимо осуществить отбор данных. Условие отбора указывается после круглых скобок функции. Никакие условия внутри самой функции писать не надо!!! Если вы сделаете запись типа Month(>=2) или Month(#01.10.2008#), то это будет неверная запись, функция работать не будет.

Имя поля всегда указывается в квадратных скобках. Если вы написали условие фильтра и Вам в результатах отбора выдается сообщение типа (см. рисунок 18), следовательно, вы допустили ошибку в имени поля. Проверьте еще раз условие отбора на наличие орфографических ошибок в именах полей.

Рисунок 18 – Ошибка в имени поля при составлении условия отбора

Для функций Now() и Date() внутри скобок нельзя писать ни имена полей, ни условия отбора. Эти функции работают в том виде, в котором они есть изначально!!!

Если возникает необходимость выяснить номер текущего месяца или года, то условие отбора будет выглядеть следующим образом:

Year([Срок доставки])=Year(Date())

Month([Срок доставки])=Month(Date())

ЗАДАНИЕ 12

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

1. Выясните сколько поставщиков выполнило заказ в первые 2 месяца 2008 года.

2. Используя функции Year, Month, Date (), а также оператор And, выясните для поставщиков, чьим сроком доставки является текущий месяц 2008 года.

3. Выясните информацию о доставках, произведенных в апреле 2008 года.

4. Выясните данные о доставках проходивших с 15 по 29 мая 2008 года.

5. С помощью таблицы Заказы выведите записи о заказах, которые осуществлялись не в декабре 2008 года на автомобили с Российской сборкой.

Результат покажите преподавателю.




Поделиться с друзьями:


Дата добавления: 2015-07-02; Просмотров: 5377; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.