적용 대상:yes Databricks Runtime 18.1 이상으로 ![]()
문자열인 경우 expr 지정된 형식 목록의 첫 번째 일치 패턴에 TIMESTAMP 따라 구문 분석하거나 일치하는 패턴이 없으면 반환 NULL 합니다. 숫자 형식인 경우 expr Unix 타임스탬프로 구문 분석합니다. 오류를 발생시키는 대신 잘못되었거나 일치하지 expr 않는 반환 NULL 입니다.
문법
try_parse_timestamp(expr [, { pattern [...] } ])
Arguments
-
expr: 로 구문 분석할 문자열 또는 숫자 값입니다
TIMESTAMP. 허용되는 형식은 다음과 같습니다.-
TINYINT,SMALLINT, ,INT,BIGINT -
FLOAT,DOUBLE -
DECIMAL(최대 18개 정밀도) STRING
-
-
패턴: 타임스탬프 패턴의 선택적 목록 또는 미리 정의된 목록(예:
#iso8601또는#rfc3339.)에 대한 참조입니다. 타임스탬프 패턴은 상수 문자열이어야 합니다. 지정한 패턴이 없으면 지정하는#extended것과 같습니다. 패턴 기호 참조 및 미리 정의된 패턴 목록 목록은 함수의 패턴 참조 를parse_timestamp참조하세요.
Returns
A TIMESTAMP또는 NULL 구문 분석할 수 없는 경우 expr
expr 문자열이고 일치하는 패턴이 없으면 함수가 반환됩니다NULL.
expr 숫자가고 유효한 Unix 타임스탬프로 해석할 수 없는 경우(예: 오버플로) 함수가 반환됩니다NULL.
형식 매개 변수의 형식이 잘못된 경우(잘못된 패턴 또는 알 수 없는 패턴 목록) 함수는 여전히 오류를 발생합니다. 값 반환NULL에 대한 expr 오류만 구문 분석합니다.
expr이 NULL 경우, 함수는 NULL를 반환합니다.
Notes
- 패턴 목록에 값이
NULL포함되어 있으면 무시됩니다. 제공된 모든 패턴이NULL면 결과는 .입니다NULL. - 타임스탬프가 표준 시간대 정보가 없는 패턴과 일치하면 세션 표준 시간대에서 구문 분석됩니다.
오류 조건
예제
-- Parse timestamp according to default pattern list
> SELECT try_parse_timestamp('2024-12-09T19:30:01');
2024-12-09 19:30:01.000
-- Invalid date returns NULL
> SELECT try_parse_timestamp('2016-12-32');
NULL
-- Bad input returns NULL instead of error
> SELECT try_parse_timestamp('bad input');
NULL
-- Invalid pattern still raises an error (does not return NULL)
> SELECT try_parse_timestamp('2023', 'QQQQ');
Error: INVALID_PARAMETER_VALUE.PATTERN
-- Extend the default pattern list with custom patterns
> SELECT try_parse_timestamp(col, "#extended", "dd MMM, yyyy", "MMM d; yy") FROM VALUES ('2024-12-01'), ('02 Dec, 2024'), ('DEC 3; 24') AS t(col)
2024-12-01 00:00:00.000
2024-12-02 00:00:00.000
2024-12-03 00:00:00.000