try_variant_get
函式
適用於: Databricks SQL Databricks Runtime 15.3 和更新版本
從 variantExpr
所path
指定的 、擷取 型type
別的值,如果NULL
無法轉換成目標型別,則為 。
語法
try_variant_get ( variantExpr, path, type )
引數
variantExpr
:VARIANT
運算式。path
STRING
:具有格式正確的 JSON 路徑運算式的常值。type
STRING
:定義型別的常值。
傳回
型別 type
的值。
如果找不到物件,或無法轉換成 type
, NULL
則會傳回 。
若要在轉換失敗時引發錯誤,請使用 variant_get。
範例
-- Simple example
> SELECT try_variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.data[1].a', 'string')
hello
-- missing path
> SELECT try_variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.missing', 'int')
null
-- Invalid cast
> SELECT try_variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.key', 'array<int>')
null