【hive】解析json格式字符串
(1)解析json中的单个属性 get_json_object(json_str,’$.xxx’/‘$[xxx]’)
get_json_object函数第一个参数填写json对象变量(string),第二个参数使用$表示json变量标识,然后用 . 或 [] 读取对象或数组
示例:
table.property
{"tag_id":"448","tag_type":"custom_point"}
访问property里的tag_id(‘$.tag_id’) : select get_json_object(property,’$.tag_id’) from table;
但是使用get_json_object()的时候只能一次访问一个json对象里的字段
(2)解析json中多个属性 json_tuple(json_str,’xxx1’,’xxx2’)
json_tuple函数第一个参数是json对象变量,以后参数是用单引号引起来的字段名字
示例:
select json_tuple(property,'tag_id','tag_type') from table;
如果要与原来数据进行合并使用
select id from table lateral view json_tuple(property,'tag_id','tag_type’);