TRY_CAST
TRY_CAST (오류 처리 캐스팅)
데이터 타입 변환의 일부에서 사용할 수 있는 CAST, ::의 특수 버전이에요. 동일한 연산(즉, 한 데이터 타입의 값을 다른 데이터 타입으로 변환)을 수행하지만, 변환을 수행할 수 없을 때 오류를 발생시키는 대신 NULL 값을 반환해요.
자세한 내용은 오류 처리 변환 함수를 참고해요.
본문
구문
TRY_CAST( <source_string_expr> AS <target_data_type> )
사용 참고 사항
- 문자열 표현식에서만 작동해요.
target_data_type은 다음 중 하나여야 해요:- VARCHAR(또는 동의어)
- NUMBER(또는 동의어)
- DOUBLE
- BOOLEAN
- DATE
- interval 변형
- TIME
- TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ 또는 TIMESTAMP_TZ
예시
다음 코드 샘플은 유효한 값과 유효하지 않은 값에서 TRY_CAST 함수를 사용하는 방법을 보여줘요:
SELECT TRY_CAST('05-Mar-2016' AS TIMESTAMP);
+--------------------------------------+
| TRY_CAST('05-MAR-2016' AS TIMESTAMP) |
|--------------------------------------|
| 2016-03-05 00:00:00.000 |
+--------------------------------------+
SELECT TRY_CAST('05/16' AS TIMESTAMP);
+--------------------------------+
| TRY_CAST('05/16' AS TIMESTAMP) |
|--------------------------------|
| NULL |
+--------------------------------+
SELECT TRY_CAST('ABCD' AS CHAR(2));
+-----------------------------+
| TRY_CAST('ABCD' AS CHAR(2)) |
|-----------------------------|
| NULL |
+-----------------------------+
SELECT TRY_CAST('ABCD' AS VARCHAR(10));
+---------------------------------+
| TRY_CAST('ABCD' AS VARCHAR(10)) |
|---------------------------------|
| ABCD |
+---------------------------------+