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

Функции даты и времени представлены в таблице ниже (Таблица «Функции даты и времени»).

Таблица 6. Функции даты и времени

Функция Синтаксис Пример
1 DATEADD
DATEADD( datetime [, unit [, number ] ] )

                                              

Возвращает дату, полученную в результате добавления unit в количестве number к указанной дате datetime.

Аргумент number задается целым числом. Может принимать отрицательные значения.

Аргумент unit принимает следующие значения:

  • "year" – год;

  • "month" – месяц;

  • "day" – день;

  • "hour" – час;

  • "minute" – минута;

  • "second" – секунда

DATEADD(TODATETIME('2018-01-12'), DAY, 6)

                                              

2 DATEPART
DATEPART( datetime, unit [, firstday ] )

                                              

Возвращает часть даты в виде целого числа.

В зависимости от аргумента unit возвращает следующие значения:

  • "year" – номер года;

  • "quarter" – номер квартала года (от 1 до 4);

  • "month" – номер месяца в году

  • "week" – номер недели в году по ISO 8601;

  • "dayofweek", "dow" – номер дня недели;

  • "day" – номер дня в месяце;

  • "hour" – номер часа в дне;

  • "minute" – номер минуты в часе;

  • "second" – номер секунды в минуте.

Если выбрано значение "dayofweek", то дополнительным параметром firstday можно задать, какой день недели считать первым – по умолчанию это понедельник. Более подробно об этом параметре смотрите в описании функции DAYOFWEEK

DATEPART(TODATETIME('2015-05-05'), 'year')

                                              

3 DATETRUNC
DATETRUNC( datetime, unit [, number ] )

                                              

Возвращает дату, округленную по аргументу unit.

Если задан аргумент number, то происходит округление до этого количества временных единиц. Отсутствие аргумента эквивалентно значению 1.

Поддерживаемые значения unit:

  • "second";

  • "minute";

  • "hour";

  • "day" (при заданном number используется номер дня в году);

  • "week";

  • "month";

  • "quarter";

  • "year"

DATETRUNC(TODATETIME('2018-07-12 11:07:13'), 'minute')

                                              

4 DAY
DAY( datetime )

                                              

Возвращает номер дня в месяце в указанной дате datetime

DAY(TODATETIME('2019-01-23'))

                                              

5 DAYOFWEEK
DAYOFWEEK( datetime [, firstday ] )

                                              

Возвращает день недели в соответствии с ISO 8601.

Понедельник – 1;

Воскресенье – 7.

Если указан дополнительный параметр firstday, то этот день считается первым в неделе. Допустимые значения:

  • " Monday", " Mon" – понедельник;

  • " Tuesday", " Tue" – вторник;

  • " Wednesday", " Wed" – среда;

  • "Thursday", "Thu" – четверг;

  • "Friday", "Fri" – пятница;

  • "Saturday", "Sat" – суббота;

  • "Sunday", "Sun" – воскресенье

DAYOFWEEK(TODATETIME('2023-03-12 01:02:03'))

                                              

6 HOUR
HOUR( datetime )

                                              

Возвращает номер часа в дне в указанной дате и времени datetime. При указании даты без времени возвращает 0

HOUR(TODATETIME('2019-01-23 15:07:47'))

                                              

7 MINUTE
MINUTE( datetime )

                                              

Возвращает номер минуты в часе в указанной дате datetime. При указании даты без времени возвращает 0

MINUTE(TODATETIME('2019-01-23 15:07:47'))

                                              

8 MONTH
MONTH( datetime )

                                              

Возвращает номер месяца в году в указанной дате datetime

MONTH(TODATETIME('2019-03-23'))

                                              

9 NOW
NOW()

                                              

Возвращает текущую дату и время в зависимости от источника данных и типа соединения

NOW()

                                              

10 QUARTER
QUARTER( datetime )

                                              

Возвращает номер квартала года (от 1 до 4) в указанной дате datetime

QUARTER(TODATETIME('2019-04-23'))

                                              

11 SECOND
SECOND( datetime )

                                              

Возвращает номер секунды в минуте в указанной дате datetime. При указании даты без времени возвращает 0

SECOND(TODATETIME('2019-01-23 15:07:47'))

                                              

12 TODAY
TODAY()

                                              

Возвращает текущую дату в зависимости от источника данных и типа соединения

TODAY()

                                              

13 WEEK
WEEK( value )

                                              

Возвращает номер недели в соответствии с ISO 8601. Первой считается неделя, которая содержит первый четверг года и 4.01

WEEK(TODATETIME('1971-01-14 01:02:03'))

                                              

14 YEAR
YEAR( datetime )

                                              

Возвращает номер года в указанной дате datetime

YEAR(TODATETIME('2019-01-23'))