hive top10 sql简化实现方法

本文探讨如何简化Hive SQL查询以获取Top10数据,避免多层嵌套,提供了一种在分组时直接使用窗口函数的方法,使代码更清晰简洁。
摘要由CSDN通过智能技术生成

最近接手一个项目,好多报表都要去top10展示,在写sql的时候发现需要一层套一层,一层套一层,至少需要套三层以上;然后就在想,这个sql能不能精简一下?看着更加清晰一些呢?
我们来看一个简单的例子,表数据如下:
在这里插入图片描述
需求是看城市用户数的top10
按正常的思路,是先按城市分组统计人数,然后用开窗函数做排名,再然后取排名前10。
通过这个思路写出的sql

SELECT 
     cityname 
    ,cnt 
FROM (
	SELECT 
		 cityname 
		,cnt 
		,row_number() over(ORDER 
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值