- Categories:
TRY_CAST¶
A special version of CAST , :: that is available for a subset of data type conversions. It performs the same operation (i.e. converts a value of one data type into another data type), but returns a NULL value instead of raising an error when the conversion can not be performed.
For more information, see Error-handling conversion functions.
Syntax¶
TRY_CAST( <source_string_expr> AS <target_data_type> )
Usage notes¶
Only works for string expressions.
target_data_type
must be one of the following:VARCHAR (or any of its synonyms)
NUMBER (or any of its synonyms)
DOUBLE
BOOLEAN
DATE
TIME
TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, or TIMESTAMP_TZ
Examples¶
The following code samples show how to use the TRY_CAST
function with
valid and invalid values:
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 | +---------------------------------+