Последнее обновление
NANOSECONDS_ADD
Описание
Добавляет заданное количество наносекунд к значению TIMESTAMP_NS, сохраняя наносекундную точность.
Синтаксис
NANOSECONDS_ADD(<timestamp_ns>, <delta>)
Параметры
| Параметр | Описание |
|---|---|
<timestamp_ns> | Исходное значение типа TIMESTAMP_NS. |
<delta> | Количество добавляемых наносекунд, тип — BIGINT. При отрицательном значении наносекунды вычитаются. |
Возвращаемое значение
Возвращает TIMESTAMP_NS. Возвращает NULL, если хотя бы один аргумент равен NULL. Выдаёт ошибку, если результат выходит за пределы диапазона TIMESTAMP_NS.
Пример
SELECT NANOSECONDS_ADD(
CAST('1969-12-31 23:59:59.999999999' AS TIMESTAMP_NS), 1
) AS result;
+-------------------------------+
| result |
+-------------------------------+
| 1970-01-01 00:00:00.000000000 |
+-------------------------------+
При отрицательном значении delta наносекунды вычитаются:
SELECT NANOSECONDS_ADD(
CAST('1970-01-01 00:00:00.000000001' AS TIMESTAMP_NS), -2
) AS result;
+-------------------------------+
| result |
+-------------------------------+
| 1969-12-31 23:59:59.999999999 |
+-------------------------------+
SELECT NANOSECONDS_ADD(CAST(NULL AS TIMESTAMP_NS), 1) AS result;
+--------+
| result |
+--------+
| NULL |
+--------+