Перейти к содержимому
Последнее обновление

UTC_TIMESTAMP

Описание​

Функция UTC_TIMESTAMP возвращает текущие дату и время в часовом поясе UTC. Она не зависит от локального часового пояса и всегда возвращает текущее время по UTC, обеспечивая согласованность времени при работе с разными часовыми поясами.

Поведение этой функции соответствует поведению функции utc_timestamp в MySQL.

Синтаксис​

UTC_TIMESTAMP([`<precision>`])

Параметры​

ПараметрОписание
<precision>Точность возвращаемого значения даты и времени задаётся целым числом в диапазоне [0, 6]. Допускаются только константы целочисленного типа.

Возвращаемое значение​

Возвращает текущие дату и время по UTC.

Возвращает значение типа DATETIME (формат: YYYY-MM-DD HH:mm

.ssssss
). При использовании возвращённого результата в арифметических операциях он преобразуется в целочисленный формат (формат YYYYMMDDHHmmss).

Если входное значение равно NULL или точность выходит за допустимый диапазон, возникает ошибка.

Примеры​

-- Current local time is UTC+8 2025-10-27 14:43:21
SELECT UTC_TIMESTAMP(), UTC_TIMESTAMP() + 0, UTC_TIMESTAMP(5), UTC_TIMESTAMP(5) + 0;
+---------------------+---------------------+---------------------------+----------------------+
| UTC_TIMESTAMP() | UTC_TIMESTAMP() + 0 | UTC_TIMESTAMP(5) | UTC_TIMESTAMP(5) + 0 |
+---------------------+---------------------+---------------------------+----------------------+
| 2025-10-27 06:43:21 | 20251027064321 | 2025-10-27 06:43:21.88177 | 20251027064321 |
+---------------------+---------------------+---------------------------+----------------------+
SELECT UTC_TIMESTAMP(7);
-- ERROR 1105 (HY000): errCode = 2, detailMessage = scale must be between 0 and 6

SELECT UTC_TIMESTAMP(NULL);
-- ERROR 1105 (HY000): errCode = 2, detailMessage = UTC_TIMESTAMP argument cannot be NULL.