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

使用限制

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

命令语法

GET_JSON_OBJECT的命令语法如下,在调用之前需要Superuser创建extension。
CREATE extension hive_compatible;
SELECT get_json_object ( json_string, path )

参数说明

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

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

使用示例

create extension hive_compatible;
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, '$.store.bicycle.price') from test;
Result: 19.95

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