我有一个包含userID和一些变量选项的Hive表,基本上看起来像这样:
userID selection
1 A
1 D
1 F
2 A
2 C
我想要做的是压缩这些信息并最终得到如下内容:
userID selection1 selection2 selection3
1 A D F
2 A C
这甚至可能吗?鉴于可能的选择数量因用户而异,我不清楚如何进行此分组。
如果我可以这样做,那就更好了。
userID selection
1 A,D,F
2 A,C
我尝试了几种方法,但到目前为止还没有足够的描述。我认为我想要的是形式:
select userID, group_concat(selection) from table_name group by userID
但据我所知,group_concat函数不可用。
谢谢!
答案 0 :(得分:1)
如果有人最终需要答案,可以通过以下方式实现:
select userID, collect_set(selection) from table_name group by userID