对多行进行合并(collect_set,collect_list函数)

一、字段

字段        含义
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),通过分隔符连接两个字符串

 

三、结合使用

SELECT wname,concat_ws(';',collect_set(wtype)) as exp from input group by wname

 

上一篇:java集合的定义


下一篇:python学习记录(一)基本语法查缺补漏