【大数据技术】Hive窗口函数里rows between与range between的区别及详细解析

原始表数据如下:
在这里插入图片描述

select t.*
    ,sum(sales) over(partition by name order by month rows between 1 preceding and 1 following ) row_sale 
    ,sum(sales) over(partition by name order by month range between 1 preceding and 1 following ) range_sale 
from sales t ;

在这里插入图片描述

  • 计算逻辑
    row_sale:
    range_sale

结论:

rows between 是物理上的上一行到下一行
range是逻辑上的区间范围,根据当前行的值及给定的preceding及following值计算出一个新的范围,符合此范围的被求和,最终计算出值

—本文待更新

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐