GROUP BY将每个群组成员展平为一个单独的列

时间:2016-08-09 10:52:38

标签: sql-server reporting-services

我正在尝试在SSRS中生成报告。

我有两张表格如下:

地址表格:

AddressId | AddressLine

AddressCountEachMonth

ID | AddressId | Date | Count

对于每个日期(年 - 月),AddressCountEachMonth表中都有一个带有计数值的条目。

我想要做的是能够查询AddressCountEachMonth以输出结果如下

例如,如果我提供开始日期:2014-01-01和日期:2014-05-01

查询结果应为:

Address | 2016-01 | 2016-02 | 2016-03 | 2016-04 | 2016-05| 

x            5          1         0       2          4
y            2          3         4       0          2
...
...

SQL Server中是否有任何功能可以提供帮助?我查看了STUFF,但无法生成结果。

1 个答案:

答案 0 :(得分:1)

幸运的是,SSRS提供了动态转动的功能,因此您不必对查询进行硬编码或构建动态SQL。查看这篇文章,逐步说明如何执行此操作。

https://msdn.microsoft.com/en-us/library/ms157334%28v=sql.100%29.aspx?f=255&MSPPError=-2147217396

另一个好的:

https://www.simple-talk.com/sql/reporting-services/advanced-matrix-reporting-techniques/