三分鐘帶你解析Hive中的json字串(詳細!)

Forever_ck發表於2018-12-18

很多時候,我們會在解析hive的時候,見到json的身影,那麼今天我們就來聊聊hive中是如何解析json資料的,分析如下:
建立json格式表:(我們的目的是為了解析json資料,所以就簡單建一個表)

	create table t1(json string);

如果報錯,參看上篇錯誤!
https://blog.csdn.net/Forever_ck/article/details/85055984
load一些資料如下:

load data local inpath '找到檔案路徑' into table t1;

在這裡插入圖片描述

簡單查詢結果如下:
在這裡插入圖片描述
取欄位:(重點來了!)

第一種;取單個json欄位: (get_json_object)

select get_json_object(json,'$.exam_id') from t1;

結果如下:
在這裡插入圖片描述
注意:如果欄位名稱錯誤,不會報錯,但結果會是 NULL;
在這裡插入圖片描述
第二種:同時取多個欄位:
在這裡插入圖片描述
是不是覺得這種取多個欄位的方法比較low,來看取多個欄位的另一種方法:
(json_tuple)語句如下:
在這裡插入圖片描述
注意:這裡已經沒有$.了,再來看一下如果不去掉的結果:
在這裡插入圖片描述

相關文章