본문으로 건너뛰기
최종 수정: 에

NANOSECONDS_SUB

설명​

나노초 정밀도를 유지하면서 TIMESTAMP_NS 값에서 지정된 나노초 수를 뺍니다.

구문​

NANOSECONDS_SUB(<timestamp_ns>, <delta>)

매개변수​

매개변수설명
<timestamp_ns>기준값으로, 타입은 TIMESTAMP_NS입니다.
<delta>뺄 나노초 수로, 타입은 BIGINT입니다. 음수이면 나노초를 더합니다.

반환값​

TIMESTAMP_NS를 반환합니다. 인수 중 하나라도 NULL이면 NULL을 반환합니다. 결과가 TIMESTAMP_NS 범위를 벗어나면 오류를 보고합니다.

예제​

SELECT NANOSECONDS_SUB(
CAST('1970-01-01 00:00:00.000000000' AS TIMESTAMP_NS), 1
) AS result;
+-------------------------------+
| result |
+-------------------------------+
| 1969-12-31 23:59:59.999999999 |
+-------------------------------+

음수 delta는 나노초를 더합니다:

SELECT NANOSECONDS_SUB(
CAST('1969-12-31 23:59:59.999999999' AS TIMESTAMP_NS), -1
) AS result;
+-------------------------------+
| result |
+-------------------------------+
| 1970-01-01 00:00:00.000000000 |
+-------------------------------+
SELECT NANOSECONDS_SUB(CAST(NULL AS TIMESTAMP_NS), 1) AS result;
+--------+
| result |
+--------+
| NULL |
+--------+