hivesql窗口函数

本文详细介绍了Hive SQL中的窗口函数,包括sum/avg/max/min/row_number/first_value/last_value等操作,并阐述了四种不同的用法:整体聚合、连续累积、同组内操作以及在每个分组内连续累积。通过rows between子句控制行范围,如向前、向后、当前行以及边界。示例代码展示了如何应用这些函数进行数据计算,例如计算分组内特定行范围的累计值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sum/avg/max/min/row_number/first_value/last_value+窗口函数 总共有四种用法 注意是整体聚合 还是累积聚合
–sum/avg/max/min/row_number/first_value/last_value(…) over( ) -------对表所有行operator
–sum/avg/max/min/row_number/first_value/last_value(…) over( order by … ) ---- 连续累积operator
–sum/avg/max/min/row_number/first_value/last_value(…) over( partition by… ) ---- 同组内所行operator
–sum/avg/max/min/row_number/first_value/last_value(…) over( partition by… order by … ) ----在每个分组内,连续累积operator

Window expression窗口表达式给我们提供了一种控制行范围的能力,比如向前2行,向后3行。
语法如下:
关键字是rows between,包括下面这几个选项

  • preceding:往前
  • following:往后
  • current row:当前行
  • unbounded:边界
  • unbounded preceding 表示从前面的起点
  • unboun
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

科学的N次方

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值