如何使用SQL语句在指定日期获取聚合总和

时间:2016-07-13 19:27:00

标签: sql sql-server sql-server-2012 aggregate-functions

我正在尝试使用此脚本生成SQL Server表中包含的事务总数:

Select Category,Sum(Items) as CategoryTotals 
from TransactionsTable  
where TransDate <=ReportingDate
Group By Category

我还有一个日期列表,其中包含以下信息:

Select ReportingDates From AllMyDatesTable

任何人都可以帮助我如何构建查询以加入两个查询以获取类似于

的指定日期的CategoryTotals列表
Select ReportingDates,CategoryTotals from (My Two Tables)?

任何帮助表示赞赏

1 个答案:

答案 0 :(得分:1)

这样的东西?如果您想显示日期,即使未找到任何交易,请转到left join而不是inner join

Select d.ReportingDates,t.Category,Sum(d.Items)
  from AllMyDatesTable d inner join TransactionsTable t 
    on d.ReportingDates = t.TransDate 
   and d.TransDate <= ReportingDate
 group by d.ReportingDates,t.Category