Работа с датами и временем | Tdg

Версия:

2.x
Справочник Sandbox API Работа с датами и временем

Работа с датами и временем

Доступные модули:

  • datetime – работа с датой и временем;

  • timezone – работа с часовыми поясами;

  • clock – значения времени, полученные из функции Posix / C CLOCK_GETTIME. Для работы доступны все функции модуля, за исключением функции clock.bench().

datetime

Модуль datetime содержит функции для работы с датой и временем. Помимо функций ниже, для работы также доступны функции из встроенного Tarantool-модуля datetime.

datetime.now()
Результат

текущее время по Гринвичу (GMT) в наносекундах

Тип результата

cdata

datetime.sec_to_iso_8601_date(sec)

Преобразует число секунд в строковое представление даты.

Параметры

sec (number) – число секунд

Результат

дата в формате ISO 8601 вида yyyy-MM-dd

Тип результата

string

datetime.nsec_to_iso_8601_date(nsec)

Преобразует число наносекунд в строковое представление даты.

Параметры

nsec (cdata) – число наносекунд

Результат

дата в формате ISO 8601 вида yyyy-MM-dd

Тип результата

string

datetime.nsec_to_iso_8601_datetime(nsec)

Преобразует число наносекунд в строковое представление даты и времени.

Параметры

nsec (cdata) – число наносекунд

Результат

дата и время в формате ISO 8601 вида yyyy-MM-ddTHH:mm:ss.SSSZ

Тип результата

string

datetime.nsec_to_iso_8601_time(nsec)

Преобразует заданную в наносекундах дату и время в строковое представление времени.

Параметры

nsec (cdata) – число наносекунд

Результат

время в формате ISO 8601 вида HH:mm:ss.SSS

Тип результата

string

datetime.nsec_to_day_of_week(nsec)

Возвращает день недели для заданной в наносекундах даты и времени.

Параметры

nsec (cdata) – число наносекунд

Результат

день недели в формате числа от 1 до 7, где 1 – воскресенье, а 7 – суббота

Тип результата

number

datetime.iso_8601_datetime_to_nsec(iso_8601_datetime)

Преобразует строковое представление даты и времени в наносекунды.

Параметры

iso_8601_datetime (string) –

дата и время в формате ISO 8601. Доступные форматы строки:

  • yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ

  • yyyy-MM-dd'T'HH:mm:ssZZZZZ

  • yyyy-MM-dd'T'HH:mm:ss

  • yyyy-MM-dd'T'HHmmss.SZZZZZ

  • yyyy-MM-dd'T'HHmmssZZZZZ

  • yyyy-MM-dd'T'HHmmss.SSS

  • yyyy-MM-dd'T'HHmmss

Результат

число наносекунд

Тип результата

cdata

datetime.iso_8601_date_to_nsec(iso_8601_date)

Преобразует строковое представление даты в наносекунды.

Параметры

iso_8601_date (string) – дата в формате ISO 8601 вида yyyy-MM-dd

Результат

число наносекунд

Тип результата

cdata

datetime.iso_8601_time_to_nsec(iso_8601_time)

Преобразует строковое представление времени в наносекунды.

Параметры

iso_8601_time (string) – время в формате ISO 8601. Доступные форматы: HH:mm:ss.SSS, HH:mm:ss.

Результат

число наносекунд

Тип результата

cdata

datetime.iso_8601_day_of_week_to_number(iso_8601_day_of_week)

Преобразует строковое представление дня недели в число от 1 до 7, где 1 – воскресенье, а 7 – суббота.

Параметры

iso_8601_day_of_week (string) – день недели в формате ISO 8601 (например, «Sunday», «Sun»)

Результат

число от 1 до 7

Тип результата

number

datetime.custom_datetime_str_to_nsec(date_str, format_str)

Преобразует заданное шаблоном строковое представление даты или даты и времени в наносекунды.

Параметры
  • date_str (string) – дата или дата и времени

  • format_str (string) – шаблон строки

Результат

число наносекунд

Тип результата

cdata

datetime.millisec_to_formatted_datetime(datetime_millisec, datetime_format_str)

Преобразует миллисекунды в заданное шаблоном строковое представление даты и времени.

Параметры
  • datetime_millisec (number) – время в миллисекундах

  • datetime_format_str (string) – шаблон строки даты и времени

Результат

дата и время, заданные шаблоном

Тип результата

string

datetime.to_sec(nsec)

Преобразует наносекунды в секунды и приводит к типу number.

Параметры

nsec (cdata) – число наносекунд

Результат

число секунд

Тип результата

number

datetime.to_millisec(nsec)

Преобразует наносекунды в миллисекунды и приводит к типу number.

Параметры

nsec (cdata) – число наносекунд

Результат

число миллисекунд

Тип результата

number

datetime.seconds_since_midnight()
Результат

число секунд с начала суток по Гринвичу (GMT)

Тип результата

number

datetime.curr_date_nsec()

Метка времени (Unix timestamp) в наносекундах, соответствующая началу текущих суток UTC. Например, для времени и даты 01.01.2023 15:42 вернется метка, соответствующая 01.01.2023 00:00.

Результат

Unix timestamp в наносекундах

Тип результата

cdata

Набор констант, которые используются для работы со временем:

  • NSEC_IN_SEC – число наносекунд в секунде;

  • NSEC_IN_MILLISEC – число наносекунд в миллисекунде;

  • NSEC_IN_DAY – число наносекунд в сутках.

timezone

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

timezone.now()
Результат

текущее время по Гринвичу (GMT) в наносекундах

Тип результата

cdata

timezone.seconds_since_midnight(timezone_id)
Параметры

timezone_id (string) – ID часового пояса

Результат

число секунд с начала текущих суток для указанного часового пояса

Тип результата

number

timezone.curr_date_nsec(timezone_id)

Метка времени (Unix timestamp) в наносекундах, соответствующая началу текущих местных суток для указанного часового пояса.

Параметры

timezone_id (string) – ID часового пояса

Результат

Unix timestamp в наносекундах

Тип результата

cdata

Нашли ответ на свой вопрос?
Обратная связь