hive提供了json的解析函数:get_json_objectsql
对于jsonArray(json数组),如person表的xjson字段有数据:json
[{"name":"王二狗","sex":"男","age":"25"},{"name":"李狗嗨","sex":"男","age":"47"}]
取出第一个json对象,那么hive sql为:数组
SELECT get_json_object(xjson,"$.[0]") FROM person;
结果是:函数
{"name":"王二狗","sex":"男","age":"25"}
取出第一个json的age字段的值:spa
SELECT get_json_object(xjson,"$.[0].age") FROM person;
结果code
25
get_json_object(param1,"$.param2")
param1:须要解析的json字段对象
param2:遇到数组就用 [0,1,2...] 0,1,2是数组对应的元素,遇到jsonObject直接用 ".key"取出想要获取的value。blog