如何在不同的列中显示包含每个月值的汇总数据?
Posted
技术标签:
【中文标题】如何在不同的列中显示包含每个月值的汇总数据?【英文标题】:How can I display summary data with values for each month in a different column? 【发布时间】:2015-08-27 04:00:48 【问题描述】:我有一个日期条件,例如从 2014 年 8 月 1 日到 2015 年 2 月 28 日。现在我想在不同的不同列中显示每个月的记录,例如 2014 年 8 月、2014 年 9 月、2014 年 10 月、2015 年 2 月。我该怎么做在不同的列中显示每个月的数据。
【问题讨论】:
使用数据透视表。 SO上有很多示例,请帮助自己。 但在 sql 2008 中我如何使用数据透视表 欢迎来到 Stack Overflow。请尽快阅读About 页面。请注意,获得 SQL Server 2008 帮助的一种方法是使用标签标记问题或在问题中提及它或(最好)两者都做。此外,作为一般规则,您应该包含您要处理的数据的小样本(不涵盖所有 7 个月;可能涵盖 2 个月)以及您希望该数据的样本输出。它使我们更容易确定我们了解您想要什么。另外,不要忘记表是有名称的——令人惊讶的是,人们经常在 SO 问题中使用匿名表。 Pivot 会有所帮助,您能否发布您的示例数据? state jan2015 feb2015 mar2015 apl2015 may15 bihar Goa assam 【参考方案1】:我认为索尼娅你可以阅读这个链接;它会帮助你...
您可以使用PIVOT
回答您的问题。
如:-
PIVOT
(
SUM(Amount)
FOR [month] IN (jan, feb, mar, apr,
may, jun, jul, aug, sep, oct, nov, dec)
)AS X
http://www.codeproject.com/Tips/500811/Simple-Way-To-Use-Pivot-In-SQL-Query
【讨论】:
一般来说,这种答案被称为“仅链接”的答案,它们在 SO 上并不是一个特别好的主意。一个原因是“链接腐烂”;一段时间后,URL 离开了。你真的应该总结一下文章建议应该做的事情。以上是关于如何在不同的列中显示包含每个月值的汇总数据?的主要内容,如果未能解决你的问题,请参考以下文章