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

技术共进,成长同行——讯飞AI开发者社区

更多推荐