hive解析json字段

hive解析json字段_第1张图片

1.背景介绍

业务中经常会遇到解析json字段的情况,毕竟json是大家使用最广泛的对象传递数据结构。

2.工具

hive内置函数:

函数 功能
get_json_object() 解析json对象 单个key
json_tuple() 解析json对象 批量key

3.实战

3.1 get_json_object()

SELECT GET_JSON_OBJECT('{"key1": "v1", "key2": null, "key3": 3}', '$.key1'); 

hive解析json字段_第2张图片

SELECT GET_JSON_OBJECT('{"key1": "v1", "key2": null, "key3": 3}', '$.key2'); 

hive解析json字段_第3张图片

SELECT GET_JSON_OBJECT('{"key1": "v1", "key2": null, "key3": 3}', '$.key3'); 

hive解析json字段_第4张图片

3.2 json_tuple

SELECT t1.*
FROM table_demo
lateral view json_tuple('{"key1": "v1", "key2": null, "key3": 3}', 'key1', 'key2', 'key3') t1 as key1, key2, key3
limit 3; 

hive解析json字段_第5张图片

4.总结

解析单个key用GET_JSON_OBJECT()函数,批量解析多个key用json_tuple()函数。

你可能感兴趣的:(#,--Hive,json)