Последнее обновление
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