Перейти к содержанию

Форматы даты и времени

Форматы строк, которые принимает тип DATETIME.

Например:

  • 2025-10-18 — дата
  • 2025-10-18 02:59:59 — дата и время
  • 2025-10-18T02:59:59.52Z — дата и время с долей секунды в UTC
  • 2025-10-18 02:59:59 Europe/Moscow — дата и время с часовым поясом

В таблицах близкие варианты записи объединены в одной строке. Значения YYYY, Mon, <DATE> и других обозначений описаны в общих правилах.

Дата

Формат Пример Примечание
YYYY-MM-DD
YYYY/MM/DD
YYYY.MM.DD
YYYY MM DD
2025-10-18 Год, месяц, день
YYYYMMDD
YYMMDD
20251018
251018
Без разделителей
MM-DD-YYYY
MM/DD/YYYY
MM.DD.YYYY
MM DD YYYY
MM-DD-YY
MM/DD/YY
MM.DD.YY
MM DD YY
10/18/2025
10/18/25
Месяц, день, год
YYYY-DDD
YYYY/DDD
YYYY.DDD
YYYY DDD
2025-291 Год и номер дня в году
Mon DD YYYY
Mon DD, YYYY
Mon-DD-YYYY
Mon/DD/YYYY
Mon.DD.YYYY
MonDD YYYY
Mon DD YY
Mon DD, YY
Mon-DD-YY
Mon/DD/YY
Mon.DD.YY
Oct 18, 2025
Oct18 2025
Месяц словом, день, год
DD Mon YYYY
DD-Mon-YYYY
DD/Mon/YYYY
DD.Mon.YYYY
DDMonYYYY
DD Mon YY
DD-Mon-YY
DD/Mon/YY
DD.Mon.YY
DDMonYY
18 Oct 2025
18Oct25
День, месяц словом, год
YYYY Mon DD
YYYY-Mon-DD
YYYY/Mon/DD
YYYY.Mon.DD
YYYYMonDD
2025 Oct 18 Год, месяц словом, день
Mon YYYY DD
Mon-YYYY-DD
Mon/YYYY/DD
Mon.YYYY.DD
YYYY DD Mon
Oct 2025 18
2025 18 Oct
Другие порядки с месяцем словом
JN
J N
JDN
JD N
JulianN
Julian N
J2460967 Юлианский день

Время

Форматы времени используются в сочетаниях с датой.

Формат Пример Примечание
HH:MM
HH:MM:SS
HH:MM:SS.F
MM:SS.F
02:59
02:59:59.5
С двоеточием. Запись 59:59.5 означает минуты и секунды с дробной частью.
HHMM
HHMM.F
HHMMSS
HHMMSS.F
0259
025959.5
Без двоеточия. В HHMM.F дробная часть относится к секунде.
HH:MM AM
HH:MM:SS AM
HH:MM:SS.F AM
HHMM AM
HHMM.F AM
HHMMSS AM
HHMMSS.F AM
12:59 AM
02:59:59 PM
С AM или PM
HH:MMAM
HH:MM:SSAM
HH:MM:SS.FAM
02:59PM AM или PM без пробела

Часовой пояс

Формат Пример Примечание
Z
±HH
±HMM
±HHMM
±HH:MM
±HH:MM:SS
Z
+03
+530
-0330
+05:45
-03:30:00
UTC и числовое смещение
±HH DST
±HMM DST
±HHMM DST
±HH:MM DST
±HH:MM:SS DST
+02 DST Числовое смещение с DST
ABBR
ABBR DST
IANA
MSK
CET DST
Europe/Moscow
Аббревиатура или название из базы IANA. ABBR DST — кроме ABBR летнего времени, например PDT, и ABBR с переменным смещением, например MSK.

Часовой пояс POSIX

Часовой пояс в форме переменной TZ из POSIX. Положительное смещение означает запад: UTC+3 — это -03:00.

Формат Пример Примечание
NAME±HH
NAME±HH:MM
NAME±HH:MM:SS
UTC+3
UTC-05:30
Без летнего времени
NAME±HHNAME
NAME±HHNAME±HH
NAME±HHNAME±HH:MM
NAME±HHNAME±HH:MM:SS
EST+5EDT С летним временем: основное смещение в часах
NAME±HH:MMNAME
NAME±HH:MMNAME±HH
NAME±HH:MMNAME±HH:MM
NAME±HH:MMNAME±HH:MM:SS
NST3:30NDT2:30 С летним временем: основное смещение в часах и минутах
NAME±HH:MM:SSNAME
NAME±HH:MM:SSNAME±HH
NAME±HH:MM:SSNAME±HH:MM
NAME±HH:MM:SSNAME±HH:MM:SS
XST+3:30:15XDT+2:30:15 С летним временем: основное смещение с секундами

NAME — любое слово из латинских букв. Первое NAME перед + или цифрой не может быть Mon, Dy, AM или одним из слов AD, BC, at, on, DST, J, JD, Julian, T, D, H, M, MM, S, Y, allballs, epoch, infinity, now, today, tomorrow, yesterday, dow, doy, isodow, isoyear.

После NAME знак + можно опустить. Ограничения правил перехода на летнее время описаны в разделе о стандартах.

Дата, время и часовой пояс

<DATE>, <TIME> и <TZ> — записи из разделов дата, время и часовой пояс соответственно.

Формат Пример Примечание
<DATE>
<DATE> <TZ>
<DATE> <TIME>
<DATE> <TIME> <TZ>
<DATE> <TZ> <TIME>
2025-10-18 02:59:59 MSK Дата с необязательными временем и часовым поясом
<DATE> HH:MM<TZ>
<DATE> HH:MM:SS<TZ>
<DATE> HH:MM:SS.F<TZ>
<DATE> MM:SS.F<TZ>
2025-10-18 02:59:59.5Z Часовой пояс вплотную ко времени с двоеточием
<DATE> HHMM<TZ>
<DATE> HHMM.F<TZ>
<DATE> HHMMSS<TZ>
<DATE> HHMMSS.F<TZ>
2025-10-18 025959+03:00 Часовой пояс вплотную ко времени без двоеточия. <DATE> HHMM<TZ> и <DATE> HHMMSS<TZ> — кроме <TZ> вида -HH:MM и -HH:MM:SS.
<DATE> at <TIME>
<DATE> at <TIME> <TZ>
on <DATE>
on <DATE> <TIME>
on <DATE> <TIME> <TZ>
on <DATE> at <TIME>
on Oct 18 2025 at 2:59 PM Со словами at и on
<DATE> allballs
epoch
2025-10-18 allballs
epoch
Специальные значения

С буквой T

До и после T можно поставить пробел. Без пробела перед T <DATE> — кроме дат с Mon и разделителями -, /, ., а также YYYY DD Mon.

Формат Пример Примечание
<DATE>T<TIME>
<DATE>T<TIME> <TZ>
2025-10-18T02:59:59 Europe/Moscow Без часового пояса или с пробелом перед ним
<DATE>THH:MM<TZ>
<DATE>THH:MM:SS<TZ>
<DATE>THH:MM:SS.F<TZ>
<DATE>TMM:SS.F<TZ>
2025-10-18T02:59:59.52Z Часовой пояс вплотную ко времени с двоеточием
<DATE>THHMM<TZ>
<DATE>THHMM.F<TZ>
<DATE>THHMMSS<TZ>
<DATE>THHMMSS.F<TZ>
20251018T025959Z Часовой пояс вплотную ко времени без двоеточия. <DATE>THHMM<TZ> и <DATE>THHMMSS<TZ> — кроме <TZ> вида -HH:MM и -HH:MM:SS.

С днем недели

Формат Пример Примечание
<DATE> Dy
<DATE>, Dy
<DATE> Dy <TIME>
<DATE> <TIME> Dy
<DATE> <TIME> <TZ> Dy
2025-10-18 Sat 02:59:59 После даты
Dy <DATE>
Dy, <DATE>
Dy <DATE> <TIME>
Dy, <DATE> <TIME>
Dy <DATE> <TIME> <TZ>
Dy, <DATE> <TIME> <TZ>
Sat Oct 18 2025 Перед датой

После Dy <DATE> — без разделителей -, /, .. День недели не сверяется с датой.

Время внутри даты

<TIME> — любой формат времени, кроме HHMM и HHMMSS, с AM или без. Его можно поставить между любыми частями <DATE>, разделенными пробелом, кроме юлианского дня.

Формат Пример Примечание
Mon DD <TIME> YYYY
Dy Mon DD <TIME> YYYY
DD Mon <TIME> YYYY
Oct 18 02:59:59 2025 Без часового пояса
Mon DD <TIME> YYYY <TZ>
Dy Mon DD <TIME> YYYY <TZ>
DD Mon <TIME> YYYY <TZ>
Dy DD Mon <TIME> YYYY <TZ>
Oct 18 02:59:59 2025 PST Часовой пояс после года
Mon DD <TIME> <TZ> YYYY
Dy Mon DD <TIME> <TZ> YYYY
DD Mon <TIME> <TZ> YYYY
Sat Oct 18 02:59:59 MSK 2025 Часовой пояс перед годом

До нашей эры

<DATE> — кроме юлианского дня, с которым BC и AD не учитываются. Год YY вместе с BC не дополняется до четырех цифр.

Формат Пример Примечание
<DATE> BC
<DATE> BC <TIME>
<DATE> <TIME> BC
<DATE> <TIME> <TZ> BC
0044-03-15 BC До нашей эры: BC
<DATE> AD
<DATE> AD <TIME>
<DATE> <TIME> AD
<DATE> <TIME> <TZ> AD
2025-10-18 AD Наша эра: AD

Юлианский день с долей суток

Формат Пример Примечание
JN.F
J N.F
JDN.F
JD N.F
JulianN.F
Julian N.F
J2460967.5 Без часового пояса
JN.F <TZ>
J N.F <TZ>
JDN.F <TZ>
JD N.F <TZ>
JulianN.F <TZ>
Julian N.F <TZ>
J2460967.5 MSK С часовым поясом

Обозначения и общие правила

  • YYYY — год, 3–4 цифры
  • YY — год, 1–2 цифры: 00–69 — 2000–2069, 70–99 — 1970–1999
  • MM — месяц в дате, минуты во времени
  • DD — день месяца
  • DDD — номер дня в году, 3 цифры
  • Mon — месяц: January…December, Jan…Dec, Sept
  • Dy — день недели: Sunday…Saturday, Sun…Sat, Tues, Weds, Thur, Thurs; не сверяется с датой
  • HH — часы
  • SS — секунды
  • F — дробная часть, любое число цифр
  • N — номер юлианского дня
  • AM — AM или PM
  • ABBR — аббревиатура часового пояса из набора Default PostgreSQL
  • IANA — название часового пояса из базы IANA
  • NAME — название в часовом поясе POSIX
  • ± — + или -; после NAME знак + можно опустить
  • <DATE> — любой формат даты
  • <TIME> — любой формат времени
  • <TZ> — любой формат часового пояса

YY, MM, DD, HH и SS — одна или две цифры, а в записи без разделителей (YYMMDD, YYYYMMDD, HHMMSS, ±HHMM) — ровно две. Регистр букв не учитывается. После знака ± можно поставить пробел. Вместо остальных пробелов можно поставить любой знак препинания ASCII, кроме +, -, ., /, : и _. Пробел между числом и словом можно не ставить, кроме пробела после <TZ> и после <DATE> с Mon и разделителями -, /, ..

Слова Dy, AM, BC, AD, at, on и ABBR можно поставить в начало или конец строки или между любыми ее частями, разделенными пробелом. Перед <DATE> с разделителями -, /, . можно поставить только at и on.

Стандарты

Ни в одном формате не поддерживаются моменты позже 9999-12-31 23:59:59 UTC.

ISO 8601-1

Частичная поддержка представления даты и времени. Не поддерживаются:

  • даты по неделям: 2025-W42-6, 2025W426
  • порядковая дата YYYYDDD
  • неполные дата и время: 2025-10, 2025, 2025-10-18T02
  • дата и время без разделителя: 20251018025959
  • десятичная запятая: 02:59:59,5
  • доли часа и минуты: HH:MM.F читается как MM:SS.F, а F в HHMM.F — как доля секунды
  • расширенный, нулевой и отрицательный год: +002025-10-18, 0000-01-01, -0044-03-15
  • смещения от ±16:00
  • знак − (U+2212) вместо -
  • интервалы, длительности и повторения

RFC 3339

Частичная поддержка даты и времени в интернете. Не поддерживаются:

  • смещения от ±16:00 до ±23:59
  • год 0000
  • секунда 60 — она переносится в начало следующей минуты

RFC 5322

Формат интернет-сообщений (ранее RFC 822 и RFC 2822), поле date-time. Поддерживается частично. Не поддерживаются:

  • смещения от ±1600
  • комментарии: (MSK)
  • пробелы вокруг :
  • военные однобуквенные часовые пояса, кроме Z
  • двузначный год 50–69 — он читается как 2050–2069, а не 1950–1969
  • трехзначный год — к нему не прибавляется 1900

RFC 9110

Семантика HTTP (ранее RFC 1123, RFC 2616 и RFC 7231), поле HTTP-date. Поддерживается частично. Не поддерживается rfc850-date: Sunday, 06-Nov-94 08:49:37 GMT.

RFC 5545

Формат календарных данных iCalendar, значения DATE и DATE-TIME. Поддерживаются частично: время без Z считается временем UTC.

SQL и C

Полная поддержка следующих стандартов:

POSIX

Частичная поддержка.

Вывод утилиты date по умолчанию — только если часовой пояс задан как ABBR или смещение.

Переменная окружения TZ, форма std offset [dst [offset]] — см. описание часового пояса POSIX. Положительное смещение означает запад: UTC+3 — это -03:00. Не поддерживаются:

  • правила перехода на летнее время: EST5EDT,M3.2.0,M11.1.0; без них действуют правила США
  • названия в угловых скобках: <+03>-3

RFC 9557 и X.680

Не поддерживаются: