我有一个用以下格式编写的HDFS表
user product
U1 101
U1 102
U1 103
U2 101
U2 104
U3 102
...............
describe A;
>> user string
product int
现在,如果我想聚合用户以便将同一用户的产品组合在一起,我该如何编写hive命令?
select user, product from A group by user;
error: line 1:14 Expression Not In Group By Key product
答案 0 :(得分:2)
您可以在配置单元中使用collect_set(col)
功能按用户名聚合产品。
使用以下命令:
select user,collect_set(product) from A group by user;
您将获得如下输出:
U1 [102,103,101]
U2 [101,104]
U3 [102]
请参阅Hive Documentation for collect_set() 了解更多信息。