TRY_CAST

✅ Azure 流分析 ✅ 构造事件流

如果强制转换成功,则返回转换为指定数据类型的值;否则,返回 NULL。 支持流分析查询语言中的 数据类型

例如,该子句 TRY_CAST ('this is a string' AS bigint) 会导致 NULL,因为无法将输入字符串转换为 bigint 数据类型。 如果需要强制转换在数据类型不兼容时失败,请改用 CAST 函数。

通过对输入列强制实施数据类型,此函数有助于确保数据纯洁。 可以通过在每个列上使用TRY_CAST筛选出与给定列中预期数据类型不匹配的脏数据。

注释

若要比较可用于类型转换的不同选项,请参阅 强制转换数据

语法

TRY_CAST ( expression AS data_type)  
  

论据

expression

要强制转换的值。 任何有效的表达式。

data_type
要将表达式强制转换为的数据类型。 使用流分析查询语言支持的 数据类型

返回类型

如果强制转换成功,则返回转换为指定数据类型的值;否则,返回 null。

例子

若要筛选出 EntryTime 列中可能存在错误的日期/时间值,请对列使用TRY_CAST,并使用 IS NOT NULL 比较,因为 NULL 值指示强制转换尝试失败。

SELECT TollId, EntryTime   
FROM Input  
WHERE TRY_CAST(EntryTime AS datetime) IS NOT NULL  

另请参阅

有关流分析数据类型的详细信息,请参阅: