本文主要是介绍collect_set、collect_list、lateral view 、explode、json解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、 collect_set、collect_list
将分组中的某一列转为一个数组,collect_set去重,collect_list不去重
Select uname,collect_set(bookname) as books from student group by uname
访问:books[0],books[1],books[2]…………
2、lateral view 、explode
lateral view 与explode连用,用于把数组拆分为多行
如:
uid bookid
1 [“12”,”13”,”14”]
2 [“15”,”16”,”17”]
Select uid, bookid from booktab lateral view explode(split(bookid,”,”)) as bookid;
3、 求百分数,显示格式带“%”
(round(tea_ucount/total_usercount*100,2)||’%’)
4、 json解析
get_json_objecct(json字符串, . 关 键 字 ) 如 果 是 j s o n 数 组 , 第 二 个 参 数 为 .关键字)如果是json数组,第二个参数为 .关键字)如果是json数组,第二个参数为.[0].关键字
json_touple(json字符串,关键字,关键字,关键字,…)
这篇关于collect_set、collect_list、lateral view 、explode、json解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!