【发布时间】:2015-06-25 11:05:32
【问题描述】:
SELECT *
FROM
(SELECT
YEAR (DateOfTransaction) AS year,
LEFT(DATENAME(MONTH, DateOfTransaction), 3) AS month,
SUM(CASE WHEN TransTypeName LIKE 'credit%' THEN amount ELSE 0 END) -
SUM(CASE WHEN TransTypeName LIKE 'Debit%' THEN amount ELSE 0 END) AS Balance
FROM
.............) AS t
PIVOT (SUM(balance) FOR month IN (jan, feb, march, ...., Dec)) AS pvt
此查询返回按月报告的帐户余额。我想要一个结果是运行平衡。
例子:
一月我贷5000,二月我贷2000
我的查询结果是
year jan feb march...dec
2014 5000 2000 null ..null
我想要这样的结果:
year jan feb march...dec
2014 5000 7000 null ..null
(5000+2000)
【问题讨论】:
-
这在 SQL Server 2012 中很简单,但在 2008 年并非如此。您能否提供一个简单的表结构,我可以用来向您展示 2008 年的示例?
标签: sql sql-server sql-server-2008 pivot