本文簡要介紹 python 語言中 pyflink.table.Expression.json_query
的用法。
用法:
json_query(path: str, wrapping_behavior=<JsonQueryWrapper.WITHOUT_ARRAY:(0,)>, on_empty=<JsonQueryOnEmptyOrError.NULL:(0,)>, on_error=<JsonQueryOnEmptyOrError.NULL:(0,)>) → pyflink.table.expression.Expression
從 JSON 字符串中提取 JSON 值。
這遵循 SQL 中 JSON 支持的 ISO/IEC TR 19075-6 規範。結果始終以
STRING
的形式返回。wrapping_behavior
確定是否應將提取的值包裝到數組中,以及是無條件地這樣做還是僅當值本身不是數組時才這樣做。on_empty
和on_error
分別確定路徑表達式為空或引發錯誤時的行為。默認情況下,在這兩種情況下都會返回null
。其他選擇是使用空數組、空對象或引發錯誤。另請參閱::
json_value()
例子:
>>> lit('{"a":{"b":1}}').json_query('$.a') # '{"b":1}' >>> lit('[1,2]').json_query('$') # '[1,2]' >>> null_of(DataTypes.STRING()).json_query('$') # None >>> lit('{}').json_query('$', JsonQueryWrapper.CONDITIONAL_ARRAY) # '[{}]' >>> lit('[1,2]').json_query('$', JsonQueryWrapper.CONDITIONAL_ARRAY) # '[1,2]' >>> lit('[1,2]').json_query('$', JsonQueryWrapper.UNCONDITIONAL_ARRAY) # '[[1,2]]' >>> lit(1).json_query('$') # null >>> lit(1).json_query('$', JsonQueryWrapper.CONDITIONAL_ARRAY) # '[1]' >>> lit('{}').json_query('lax $.invalid', JsonQueryWrapper.WITHOUT_ARRAY, JsonQueryOnEmptyOrError.EMPTY_OBJECT, JsonQueryOnEmptyOrError.NULL) # '{}' >>> lit('{}').json_query('strict $.invalid', JsonQueryWrapper.WITHOUT_ARRAY, JsonQueryOnEmptyOrError.NULL, JsonQueryOnEmptyOrError.EMPTY_ARRAY) # '[]'
版本 1.12.0 中的新函數。
相關用法
- Python pyflink Expression.json_value用法及代碼示例
- Python pyflink Expression.json_exists用法及代碼示例
- Python pyflink Expression.to_date用法及代碼示例
- Python pyflink Expression.end用法及代碼示例
- Python pyflink Expression.over用法及代碼示例
- Python pyflink Expression.to_time用法及代碼示例
- Python pyflink Expression.avg用法及代碼示例
- Python pyflink Expression.alias用法及代碼示例
- Python pyflink Expression.sum用法及代碼示例
- Python pyflink Expression.stddev_samp用法及代碼示例
- Python pyflink Expression.desc用法及代碼示例
- Python pyflink Expression.sum0用法及代碼示例
- Python pyflink Expression.in_用法及代碼示例
- Python pyflink Expression.min用法及代碼示例
- Python pyflink Expression.count用法及代碼示例
- Python pyflink Expression.var_samp用法及代碼示例
- Python pyflink Expression.max用法及代碼示例
- Python pyflink Expression.start用法及代碼示例
- Python pyflink Expression.collect用法及代碼示例
- Python pyflink Expression.stddev_pop用法及代碼示例
- Python pyflink Expression.to_timestamp用法及代碼示例
- Python pyflink Expression.distinct用法及代碼示例
- Python pyflink Expression.is_json用法及代碼示例
- Python pyflink Expression.var_pop用法及代碼示例
- Python pyflink Expression.asc用法及代碼示例
注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 pyflink.table.Expression.json_query。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。