TO_TIMESTAMP 함수
TO_TIMESTAMP는 TIMESTAMP 문자열을 TIMESTAMPTZ로 변환합니다. Amazon Redshift의 추가 날짜 및 시간 함수 목록은 날짜 및 시간 함수 섹션을 참조하세요.
구문
to_timestamp(timestamp, format)
to_timestamp (timestamp, format, is_strict)
인수
- timestamp
-
타임스탬프 값을 format에서 지정하는 형식으로 표현한 문자열입니다. 이 인수를 비워 두면 타임스탬프 값의 기본값은
0001-01-01 00:00:00
입니다. - format
-
timestamp 값의 형식을 정의하는 문자열 리터럴입니다. 시간대(
TZ
,tz
또는OF
)가 포함된 형식은 입력 값으로 지원되지 않습니다. 유효한 타임스탬프 형식은 날짜/시간 형식 문자열 섹션을 참조하세요. - is_strict
-
입력 타임스탬프 값이 범위를 벗어날 경우 오류가 반환되는지 여부를 지정하는 옵션 부울 값입니다. is_strict가 TRUE로 설정되면 범위를 벗어난 값이 있는 경우 오류가 반환됩니다. is_strict가 기본값인 FALSE로 설정되면 오버플로 값이 허용됩니다.
반환 타입
TIMESTAMPTZ
예제
다음 예는 TO_TIMESTAMP 함수를 사용하여 TIMESTAMP 문자열을 TIMESTAMPTZ로 변환하는 것을 보여줍니다.
select sysdate, to_timestamp(sysdate, 'YYYY-MM-DD HH24:MI:SS') as second;
timestamp | second -------------------------- ---------------------- 2021-04-05 19:27:53.281812 | 2021-04-05 19:27:53+00
날짜의 TO_TIMESTAMP 부분을 전달할 수 있습니다. 나머지 날짜 부분은 기본값으로 설정됩니다. 출력에 시간이 포함됩니다.
SELECT TO_TIMESTAMP('2017','YYYY');
to_timestamp -------------------------- 2017-01-01 00:00:00+00
다음 SQL 문은 '2011-12-18 24:38:15' 문자열을 TIMESTAMPTZ로 변환합니다. 결과는 시간 수가 24시간을 초과하므로 다음 날에 해당하는 TIMESTAMPTZ입니다.
SELECT TO_TIMESTAMP('2011-12-18 24:38:15', 'YYYY-MM-DD HH24:MI:SS');
to_timestamp ---------------------- 2011-12-19 00:38:15+00
다음 SQL 문은 '2011-12-18 24:38:15' 문자열을 TIMESTAMPTZ로 변환합니다. 타임스탬프의 시간 값이 24시간을 초과하므로 결과는 오류입니다.
SELECT TO_TIMESTAMP('2011-12-18 24:38:15', 'YYYY-MM-DD HH24:MI:SS', TRUE);
ERROR: date/time field time value out of range: 24:38:15.0