variant_get
関数
適用対象: Databricks SQL Databricks Runtime 15.3 以降
variantExpr
で指定された path
から型の値を抽出します。
構文
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.