【发布时间】:2012-06-22 17:23:44
【问题描述】:
我正在尝试开发一个 SQL 字段,它是除前两个之外的行的所有列的总和。下面是我的代码,它返回 MonthYear、Total、Sum1、Sum2 和 Sum3 列。我想要一个总计 Sum1、Sum2 和 Sum3 的 FinalSum。这将用于反检查 Total 列的准确性。有没有办法做到这一点?运行 Microsoft SQL Server 2005 - T-SQL
SELECT MonthYear,
COUNT(*) AS Total,
ISNULL(
SUM(
CASE
WHEN Status='Sum1' THEN 1
ELSE 0
END
)
,0) AS [Sum1],
ISNULL(
SUM(
CASE
WHEN Status='Sum2' THEN 1
ELSE 0
END
)
,0) AS [Sum2],
ISNULL(
SUM(
CASE
WHEN Status='Sum3' THEN 1
ELSE 0
END
)
,0) AS [Sum3]
FROM tablename
GROUP BY
MonthYear
【问题讨论】:
-
您能否提供一些示例数据来更好地解释这一点?具有预期输出的相同样本数据将大大有助于解释您的目标。
标签: sql sql-server tsql sum