我的数据遵循以下结构:
cust chan ts
1 A 1
1 A 2
1 A 3
1 B 4
1 C 5
1 A 6
1 A 7
2 B 1
2 C 2
2 B 3
2 B 4
2 C 5
3 A 1
3 A 2
3 A 3
3 A 4
我正在尝试按cust折叠和转置,其中通道序列被分组,但顺序保持不变,即转换为以下格式:
cust group
1 A-B-C-A
2 B-C-B-C
3 A
我想我可以用类似这样的语法来实现这一点:
SELECT
cust
, concat_ws('-',collect_list(chan)) OVER (PARTITION BY cust ORDER BY ts) AS group
FROM table
GROUP BY cust
但是hive似乎不喜欢concat\ws和partitionby的组合(如果我去掉另一个语句,这两个语句都可以工作)。感谢您的帮助。谢谢!
暂无答案!
目前还没有任何答案,快来回答吧!