SQL TRY_CAST() 函数
SQL TRY_CAST() 函数是SQL中的转换函数之一,类似于CAST函数。它用于在不同的数据类型之间转换表达式。它用于更改表达式的数据类型。如果成功,SQL TRY CAST将返回所选数据类型中的表达式。如果不成功,则返回null。
TRY CAST()和CAST()函数之间的主要区别在于处理失败的转换的方式。CAST()函数对于失败的转换操作会产生错误,而TRY CAST()返回NULL。
语法
以下是SQL TRY_CAST()函数的语法 −
参数
该函数仅接受三个参数。具体如下描述:
- expression - 要转换的有效表达式。
-
datatype - 要将表达式转换为的数据类型。
-
length - 用于定义任何目标数据类型的长度,作为可选参数。
示例
让我们尝试使用以下查询将字符串转换为十进制数。使用TRY_CAST()函数:
输出:
当我们执行上述查询时,得到的输出结果如下:
示例
在下面的示例中,我们将使用 GETDATE() 以及TRY_CAST()函数,通过以下查询将日期和时间转换为日期值。
输出
执行上述查询后,输出如下所示 –
示例
考虑以下示例,我们将使用 GETDATE() 函数以及TRY_CAST()函数来将表达式转换为varchar,使用以下查询:
输出
执行上述查询后,输出如下所示:
示例
让我们来看另一个场景,在这个场景中,我们将使用 GETDATE() 和TRY_CAST()函数来将日期和时间转换为时间值,使用以下查询:
输出
上述查询的输出如下所示−
示例
看下面的示例,我们将使用以下查询将十进制值转换为整数。
输出
如果我们编译并运行上述查询,结果如下所示−
示例
让我们来看下面的示例,其中 TRY_CAST() 函数在没有超出限制时返回NULL,使用以下查询:
输出
执行上述查询后,将生成如下所示的输出结果−
示例
让我们考虑另一个示例,我们将使用 TRY_CAST() 函数与case一起运行以下查询:
输出
当查询被执行时,它将生成以下输出:
示例
考虑以下示例,在此示例中,我们使用以下查询将表达式转换为金额:
输出
当我们执行上面的查询时,输出结果如下: