Tsql T-SQL基于过去4周的同一日期获取平均值

Tsql T-SQL基于过去4周的同一日期获取平均值,tsql,average,Tsql,Average,我有一张表格,上面有过去一年中每周的结果。我需要得到过去4周内每周同一天(从今天开始)的平均销售额。i、 e.过去4周内每周一的销售额 最好的路线是什么?非常感谢您的任何建议。非常直截了当,唯一的问题是性能,这就是为什么我要隔离28天功能,以便截止日期可以是一个SARG declare @cutoffdate datetime = dateadd(day, -28, (DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0))) select avg(sales)

我有一张表格,上面有过去一年中每周的结果。我需要得到过去4周内每周同一天(从今天开始)的平均销售额。i、 e.过去4周内每周一的销售额


最好的路线是什么?非常感谢您的任何建议。

非常直截了当,唯一的问题是性能,这就是为什么我要隔离28天功能,以便截止日期可以是一个SARG

declare @cutoffdate datetime =  dateadd(day, -28, (DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0)))

select avg(sales) as averagesales
  , datepart(dw, saledate) as saleDayOfWeeks
from your table
where saledate >= @cutoffdate
group by datepart(dw, saledate)

如果不起作用,请告诉我。

请分享您的表结构、一些示例数据以及您试图获得的结果。请参阅。