【大数据技术】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

永洪科技,致力于打造全球领先的数据技术厂商,具备从数据应用方案咨询、BI、AIGC智能分析、数字孪生、数据资产、数据治理、数据实施的端到端大数据价值服务能力。

更多推荐