【发布时间】:2018-07-16 13:02:31
【问题描述】:
我已将动态 PIVOT 的结果安排到临时表中,如下所示:
--------------------------------------------------------
| City | 2018-07-14 | 2018-07-15 | 2018-07-16 |
--------------------------------------------------------
| Satara | 3 | 9 | 1 |
| Maharashtra | 0 | 4 | 1 |
| Ghatkopar | 10 | 1 | 1 |
--------------------------------------------------------
预期输出:
----------------------------------------------------------------------
| City | 2018-07-14 | 2018-07-15 | 2018-07-16 | Total |
---------------------------------------------------------------------
| Satara | 3 | 9 | 1 | 13 |
| Maharashtra | 0 | 4 | 1 | 5 |
| Ghatkopar | 10 | 1 | 1 | 12 |
----------------------------------------------------------------------
NULL | 13 | 14 | 3 | 30 |
--------------------------------------------------------------------
最后三列是动态的日期Today's Date - 3 Days
【问题讨论】:
-
您可能会在
PIVOT之前为您的列Total进行更好的聚合,然后再进行旋转。否则,简单就是简单的数学:[2018-07-14]+[2018-07-15]+[2018-07-16] AS Total。我不能给你更多的细节,因为我没有你的 SQL,只有一些数据。 -
垂直总计最重要
-
添加垂直线的一种方法是在求和查询上与详细信息具有相同的枢轴的 UNION。
-
但是那个日期是动态的——它会从 7 月 17 日到 7 月 15 日从明天开始改变
-
是的,并且作为动态数据,这就是为什么我要为您的列
Total聚合,然后是PIVOT。不是PIVOT和聚合。
标签: sql sql-server