如何通过蜂巢中每个组的计数desc订购?

Jud*_*ing 11 hive group-by hql

这是HQL:

select A, B, count(*) as cnt from test_table group by A, B order by cnt desc;
Run Code Online (Sandbox Code Playgroud)

示例输出如下:

a1 | b1 | 5
a2 | b1 | 3
a1 | b2 | 2
a2 | b2 | 1
Run Code Online (Sandbox Code Playgroud)

但我想要的是order by在A的每一组中做,并且预期的输出如下:

a1 | b1 | 5
a1 | b2 | 2
a2 | b1 | 3
a2 | b2 | 1
Run Code Online (Sandbox Code Playgroud)

任何人都可以给我一些想法如何在一个 HQL中解决这个问题?非常感谢!

dim*_*mah 23

select A, B, count(*) as cnt 
from test_table 
group by A, B 
order by A, cnt desc;
Run Code Online (Sandbox Code Playgroud)


Muk*_*h S 1

尝试这个查询:

如果你只想要 A 的顺序,那么:

select A, B, count(*) as cnt from test_table group by A, B order by A asc;
Run Code Online (Sandbox Code Playgroud)

如果你想要 A 和 B 的顺序,那么:

select A, B, count(*) as cnt from test_table group by A, B order by A asc,B asc;
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。