【发布时间】:2018-01-31 20:16:23
【问题描述】:
我有这个脚本:
SELECT
ISNULL([name], 'Total') AS [name]
, [Yesterday]
, [Today]
, [variance]
FROM
(
SELECT
[name],
SUM([yesterday]) AS [yesterday],
SUM([today]) AS [today],
sum(variance) as Variance
FROM mytable
GROUP BY [name] WITH ROLLUP
) AS DT
返回此表:
name |yesterday|today|variance
john | 3 |4 | 0.33
smith | 4 |5 |0.25
daniel| 5 |2 |-0.6
total | 12 |11 |-0.02
总方差实际上应该是:(11-12)/12 = -0.833
如何让我的脚本产生该结果而不是总方差列?
预期的数据是:
name |yesterday|today|variance
john | 3 |4 | 0.33
smith | 4 |5 |0.25
daniel| 5 |2 |-0.6
total | 12 |11 |-0.833
【问题讨论】:
-
您能否提供您期望给定结果的数据?
-
我已经更新了。一切基本保持不变,但需要正确计算一个数字。
标签: sql sql-server sum variance rollup