我有一张如下表格:
User:String Alias:String
JohnDoe John
JohnDoe JDoe
Roger Roger
我想将一个用户的所有别名分组到一个数组中,在一个新表中,如下所示:
User:String Alias:array<String>
JohnDoe [John, JDoe]
Roger [Roger]
我无法弄清楚如何使用HiveQL。我必须为此编写UDF吗?
谢谢!
答案 0 :(得分:12)
查看built-in aggregate function collect_set
。
select
User,
collect_set(Alias) as Alias
from table
group by User;