GET_JSON_OBJECT用于解析JSON对象。本文为您介绍在交互式分析Hologres中GET_JSON_OBJECT的用法。

使用限制

GET_JSON_OBJECT函数位于Hologres的hive_compatible extension中,需要实例的Superuser执行create extension hive_compatible;创建extension后,才能调用该函数。

语法

CREATE extension hive_compatible;
SELECT get_json_object ( json_string, path )
参数说明如下表所示。
参数 描述
json_string JSON对象变量,TEXT类型。格式为合法JSON格式字符串。
path JSON内层对象访问变量。使用$表示JSON变量标识,通过 . []读取JSON内层对象或数组。

如果您输入的JSON字符串无效,则系统返回NULL

示例

CREATE extension hive_compatible;
Result:
data =
{"store":{
     "fruit":[{"weight":8,"type":"apple"}, {"weight":9,"type":"pear"}],
   "bicycle":{"price":19.95,"color":"red"}},
 "email":"amy@only_for_json_udf_test.net",
 "owner":"amy"
}

SELECT get_json_object(data, '$.owner') FROM test;
Result: amy

SELECT get_json_object(data, '$.name.bicycle.price') FROM test;
Result: 19.95

SELECT get_json_object(data, '$.store.fruit[0]') FROM test;
Result: {"weight":8, "type":"apple"}