共用方式為


variant_get函式

適用於:核取記號為「是」 Databricks SQL 核取記號為「是」 Databricks Runtime 15.3 和更新版本

從 指定的 variantExprpath取 型別的值。

語法

variant_get ( variantExpr, path, type )

引數

傳回

型別 type 的值。

如果找不到物件, NULL 則會傳回 。 如果找到物件但無法轉換為所需的類型,Azure Databricks 將拋出 INVALID_VARIANT_CAST錯誤。 若要傳回 NULL 而不是錯誤,請使用 try_variant_get 函式

範例

-- Simple example
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.data[1].a', 'string')
  hello

-- missing path
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.missing', 'int')
  null

-- Invalid cast
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.key', 'array<int>')
  Error: INVALID_VARIANT_CAST.