2014-01-16 64 views
0

我期待中的表有以下几列:透视表

department_number, amount, date_created. 

我试图创建一个表,其中显示每个部门每个月的总金额在2013年,因此它看起来像这样:

Department_number, Jan Amount, Feb Amount, March Amt, etc.... 

这是对数据透视表的情况下,或者我应该只是运行每个月不同的查询,并加入他们的行列?

+0

必须将其在SQL中完成,像EXCLE工具可以“链接”到数据,并转动这个给你。 –

回答

1

你的情况下,肯定是使用数据透视表语法的候选人。下面是一个简单的查询,它确实支持。

SELECT Department_number 
,[January] 
,[February] 
,[March] 
FROM (
SELECT Department_number, Amount, datename(date_created) AS month_created from <Your_Table> 
) AS SOURCETABLE 
PIVOT(SUM([Amount]) FOR month_created IN ([January],[February],[March])) AS PIVOTTABLE 

此查询假定您的date_created列包含您表中的值Jan,Feb,March。如果需要,您可以添加更多月份。

更多关于这个问题 - http://technet.microsoft.com/en-us/library/ms177410(v=sql.105).aspx

+0

如果date_created是日期时间数据类型会怎么样?我可以使用月份(date_created)吗? – Barnes

+0

我已在上述查询中更新了此要求。 – IndoKnight

+0

非常感谢,我能够得到这个工作。 – Barnes

-1

如果你想在SSRS报告中显示这个然后去行和列分组和汇总量,否则,您可以使用数据透视表与TSQL:How to pivot table with T-SQL?

+0

这更像是一个评论,然后是答案。 –