注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

逻辑类型转换

支持于: 批处理, 流处理

将表达式转换为给定的逻辑类型。与常规的转换表达式不同,此表达式不会更改数据的底层基本表示,而是强制执行与指定逻辑类型相关的约束,以便输出可以用作下游表达式的输入,这些表达式特别需要该逻辑类型的实例。

表达式类别: 转换

声明的参数

  • 表达式 - 要转换的表达式。
    Expression<C>
  • 逻辑类型 - 要转换到的逻辑类型。
    LogicalType
  • 非必填 默认值 - 当指定的表达式不满足所需逻辑类型的约束时的默认值。如果未指定,则此默认值将为null。如果默认值本身不满足所需逻辑类型的约束,则此表达式的结果将为null。
    Expression<C>

类型变量界限: C 接受 AnyType

输出类型: C

示例

示例 1: 基本案例

描述: 转换为自然数失败,使用默认值 参数值:

  • 表达式: -1234
  • 逻辑类型: 自然数
  • 默认值: -1

输出: null


示例 2: 基本案例

描述: 成功转换为自然数 参数值:

  • 表达式: 1234
  • 逻辑类型: 自然数
  • 默认值: null

输出: 1234


示例 3: 基本案例

描述: 转换为自然数失败 参数值:

  • 表达式: -1234
  • 逻辑类型: 自然数
  • 默认值: null

输出: null


示例 4: 基本案例

描述: 转换为自然数失败,使用默认值 参数值:

  • 表达式: -1234
  • 逻辑类型: 自然数
  • 默认值: 1

输出: 1