59","position_id":1,"qd_title":"看青山游绿水","list_id":37}]}
需要将json数组里的qd_title都提取出来转换成hive中的array数组。...下面介绍两种方法
法一get_json_object+正则
1.首先可以使用get_json_object函数,提取出数组,但是这个返回的是一个字符串
select get_json_object('{...网红打卡地","看青山游绿水"]
2.将字符串中的[ ] "都去掉,形成一个,分割的字符串
regexp_replace('${刚刚得到的字符串}','(\\[|\\]|")','')
3.使用字符串分割函数...对分割出来的每一个元素进行正则匹配,提取出qd_title对应的value
-- qd_titles 为上面分割出数组的一个元素
regexp_extract(qd_titles,'qd_title......([^"]+)',1)
3.整体使用later view 将数组打平
SELECT regexp_extract(qd_titles,'qd_title...([^"]+)',1) title,