try_variant_get
関数
適用対象: Databricks SQL Databricks Runtime 15.3 以降
path
で指定されている、variantExpr
からの type
型の値を抽出するか、ターゲット型にキャストできない場合は NULL
を抽出します。
構文
try_variant_get ( variantExpr, path, type )
引数
variantExpr
:VARIANT
式。path
: 適切な形式の JSON パス式を持つSTRING
リテラル。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