当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyflink Expression.json_value用法及代码示例


本文简要介绍 python 语言中 pyflink.table.Expression.json_value 的用法。

用法:

json_value(path: str, returning_type: pyflink.table.types.DataType = VarCharType(2147483647, true), on_empty: pyflink.table.expression.JsonValueOnEmptyOrError = <JsonValueOnEmptyOrError.NULL:(0,)>, default_on_empty: Any = None, on_error: pyflink.table.expression.JsonValueOnEmptyOrError = <JsonValueOnEmptyOrError.NULL:(0,)>, default_on_error: Any = None) → pyflink.table.expression.Expression

从 JSON 字符串中提取标量。

此方法在 JSON 字符串中搜索给定的路径表达式,如果该路径的值为标量,则返回该值。不能返回非标量值。默认情况下,该值返回为 DataTypes.STRING() 。使用 returningType 可以选择不同的类型,支持以下类型:

  • STRING

  • BOOLEAN

  • INT

  • DOUBLE

对于空路径表达式或错误,可以将行为定义为返回 null 、引发错误或返回定义的默认值。

另请参阅::json_query()

例子:

>>> lit('{"a": true}').json_value('$.a') # STRING: 'true'
>>> lit('{"a.b": [0.998,0.996]}').json_value("$.['a.b'][0]",                     DataTypes.DOUBLE()) # DOUBLE: 0.998
>>> lit('{"a": true}').json_value('$.a', DataTypes.BOOLEAN()) # BOOLEAN: True
>>> lit('{"a": true}').json_value('lax $.b',                     JsonValueOnEmptyOrError.DEFAULT, False) # BOOLEAN: False
>>> lit('{"a": true}').json_value('strict $.b',                     JsonValueOnEmptyOrError.NULL, None,                     JsonValueOnEmptyOrError.DEFAULT, False) # BOOLEAN: False

版本 1.12.0 中的新函数。

相关用法


注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 pyflink.table.Expression.json_value。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。