Hive之row_number() over分组排序
语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)
1.row_number() over()排序功能
分组排序:
已有表
E E E 9 C E A 5 B B E 8 D D C 6 E A B 6 C B D 10 C E C 4 E E D 1 D C C 8 D D E 3 B D A 9 A A C 4 C B B 3 D C A 2 C E D 10 A C C 3 D D C 1 A C D 5 E A D 1 B C A 5 C E B 8 B E B 3
执行
select f1 as user_id,count(1) as times from test_data group by f1
A 16
B 10
C 10
D 12
E 12
现要求每个次数仅展示一名用户
select user_id,times from( select user_id,times,row_number() over(partition by times order by user_id) rn from( select f1 as user_id,count(1) as times from test_data group by f1) t1) t2 where rn<2 order by times;
B 10
D 12
A 16
来源:百度站长
相关推荐
archive 2020-07-30
成长之路 2020-07-28
eternityzzy 2020-07-19
taisenki 2020-07-05
tugangkai 2020-07-05
SignalDu 2020-07-05
zlsdmx 2020-07-05
tomson 2020-07-05
tugangkai 2020-07-04
tomson 2020-07-05
Zhangdragonfly 2020-06-28
genshengxiao 2020-06-26
成长之路 2020-06-26
tomson 2020-06-26
蜗牛之窝 2020-06-26
成长之路 2020-06-25