对多行进行合并(collect_set,collect_list,sort_array函数)
一、字段
字段 含义
wname 姓名
wtype 科目
二、函数说明(在hivesql中适用)
1、collect_set()
根据wname进行分组,将wtype进行合并,统计每个人的科目,如果有两行wname,wtype一模一样的数据,collect_set()会去重,只合并其中一行,相同的科目只出现一次
2、collect_list()
根据wname进行分组,将wtype进行合并,统计每个人的科目,如果有两行wname,wtype一模一样的数据,collect_list()不会去重,相同的科目会出现两次
3、concat_ws()
语法:concat_ws(separator,str),通过分隔符连接两个字符串
4、sort_array()
语法:sort_array(str),对输入数组元素进行排序
三、结合使用
SELECT wname,concat_ws(';',sort_array(collect_set(wtype))) as exp from input group by wname
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix