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
要将 expression 强制转换为的数据类型。 使用流分析查询语言支持的 数据类型

返回类型

返回转换为指定数据类型的值(如果转换成功);否则返回 Null。

示例

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

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

另请参阅

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