尝试过去

Version >= SQL Server 2012

它将值转换为指定的数据类型,如果转换失败,则返回 NULL。例如,字符串格式的源值,我们需要它以双/整数格式。那么这将有助于我们实现它。

语法:TRY_CAST(表达式 AS data_type [(长度)])

如果转换成功,TRY_CAST() 将返回一个值转换为指定的数据类型; 否则,返回 null。

表达式 - 要转换的源值。
Data_type - 源值将转换的目标数据类型。
长度 - 它是一个可选参数,指定目标数据类型的长度。

DECLARE @sampletext AS VARCHAR(10);  
SET @sampletext = '123456';  
  
SELECT TRY_CAST(@sampletext AS INT); -- 123456  
SELECT TRY_CAST(@sampletext AS DATE); -- NULL