1. 程式人生 > >hive中json字串解析之get_json_object與json_tuple

hive中json字串解析之get_json_object與json_tuple

在技術對app進行埋點時,會講多個欄位存放在一個數組中,因此模型呼叫資料時,要對埋點資料進行解析,以作進一步的清洗。本文將介紹解析json字串的兩個函式:get_json_object和json_tuple。

表結構如下:

一、get_json_object

函式的作用:用來解析json字串的一個欄位:

select get_json_object(flist,'$.filtertype') as filtertype       ,get_json_object(flist,'$.filtersubtype')as filtersubtype       ,get_json_object(flist,'$.filtername') as filtername from aaaaaaa 執行結果如下(只解析了一條資料):

二、json_tuple

函式的作用:用來解析json字串中的多個欄位

select a.flist       ,b.filtertype       ,b.filtersubtype       ,b.filtername  from aaaaaaaaa a  lateral view json_tuple(flist,'filtertype', 'filtersubtype', 'filtername') b as  filtertype, filtersubtype,filtername;  執行結果如下:

get_json_object與json_tuple在解析埋點資料時會經常用到,而且比較有效且很簡單~