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

NOW

Описание​

Функция NOW используется для получения текущих системных даты и времени и возвращает значение типа DATETIME. Она поддерживает необязательный параметр для задания точности дробной части секунд, позволяющий регулировать число разрядов микросекунд в возвращаемом результате.

Эта функция работает так же, как функция now в MySQL.

Псевдоним

  • current_timestamp()

Синтаксис​

NOW([`<precision>`])

Параметры​

ПараметрОписание
<precision>Необязательный параметр, задающий точность дробной части секунд возвращаемого значения в диапазоне от 0 до 6. Значение по умолчанию: 0, то есть дробная часть секунд не возвращается. <br/>Из-за ограничений реализации JDK при сборке FE с JDK8 поддерживается точность только до миллисекунд (три знака после десятичной точки), а разряды более высокой точности заполняются нулями. Для более высокой точности используйте JDK11.

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

Возвращает текущее системное время в виде значения типа DATETIME.

  • Если заданное значение <precision> выходит за допустимый диапазон (например, отрицательное или больше 6), функция возвращает ошибку.

Примеры​

---Get current time
select NOW(),NOW(3),NOW(6);
+---------------------+-------------------------+----------------------------+
| now() | now(3) | now(6) |
+---------------------+-------------------------+----------------------------+
| 2025-01-23 11:08:35 | 2025-01-23 11:08:35.561 | 2025-01-23 11:08:35.562000 |
+---------------------+-------------------------+----------------------------+

--- Invalid precision (out of range, error)
SELECT NOW(7) AS result;
ERROR 1105 (HY000): errCode = 2, detailMessage = Invalid precision for NOW function. Precision must be between 0 and 6.

select NOW(-1);
ERROR 1105 (HY000): errCode = 2, detailMessage = Scale of Datetime/Time must between 0 and 6. Scale was set to: -1