【发布时间】:2018-06-07 08:47:44
【问题描述】:
我在下面有这个查询:
SELECT distinct COUNT(Status) AS [Transactions], sender AS [Supplier],
left(DATENAME(mm, Date_Reported), 3) AS Month, DATENAME(yyyy, Date_Reported) AS Year
FROM TX
where Date_Reported >= DATEADD(MONTH, -13, CAST(GETDATE() AS DATE))
GROUP BY DATENAME(mm, Date_Reported), DATENAME(yyyy, Date_Reported), sender
ORDER BY sender, Year, Month DESC;
它给了我一个如下表:
TX | Supplier | Month | Year
我想多加两列:过去 13 个月的平均值(即 5 月 17 日 - 5 月 18 日)以及过去 13 个月的总数,所以最终表格应如下所示:
Supplier | May 17 | Jun 17 | Jul 17 ... | May 18 | Average | Total
有什么想法可以通过一个大型查询来实现这一点吗?
【问题讨论】:
-
该查询无法编译,您在
FROM TX之后缺少一个WHERE谓词。 -
抱歉现在编辑了
-
OK - 还有一个问题:您将如何呈现这些数据,例如 SSRS/Power BI?例如,如果您使用的是 SSRS,我会将月份和年份连接到一个新字段中并对其进行列分组,然后计算 SSRS 中的平均值和总计。
-
是 ssrs- 使用 Visual Studio 构建报表
-
请看我的回答。
标签: sql-server average