SQL server实现rolling sum滚动前多少行求和

上一篇讲了用tableau的实现方法Tableau实现累加多少天求和rolling_sum()

这一篇写一下用SQL的方法实现.

要实现当前月份和之前2个月的数据相加,代码很简单,直接使用over函数和 rows between n preceding and n following

就可以了。

代码:

SELECT  [salesdate]
      ,[Region]
	  ,sale
      ,sum(sale)over(order by salesdate,region rows BETWEEN 2 preceding AND CURRENT ROW)--2 following
  FROM [BKEDW].[dbo].[Rollingtest]
  where salesdate <'20190110'

效果:

SQL server实现rolling sum滚动前多少行求和_第1张图片

你可能感兴趣的:(BI,SQL)