有没有办法在查询中查看组的详细信息?
Is there a way to see details for groups in a query?
我需要在 SSRS 中制作一个将以这种格式输出数据的报告:
Person | DocumentID | Data1 | Data2 | .....
----------------------------------------------
Mr. Smith | | | |
| #123021312 | 01 | 04 | .....
| #132145681 | 07 | 00 | .....
Mr. Black | | | |
| #912205112 | 11 | 08 | .....
| #131135810 | 03 | 05 | .....
..............................................
因此,查询有一种层次结构。有明细记录(关于文件的数据)和组记录(人)。如果我只执行 GROUP BY,我将只能看到组记录,并显示一些聚合信息,例如 Data1 的最大值或文档 ID 的计数。相反,我希望能够同时看到聚合行和详细信息行。
我尝试使用谷歌搜索,但找不到任何关于这在 T-SQL(或 SSRS,就此而言)中是否可行的信息。是吗?
是的,这是可能的....
平面数据
Declare @T TABLE (Person VARCHAR(25), DocumentID VARCHAR(25), Data1 VARCHAR(25), Data2 VARCHAR(25))
INSERT INTO @T (Person,DocumentID,Data1,Data2) VALUES
('Mr. Smith','#12345678A','01','04'),
('Mr. Smith','#98765432A','02','05'),
('Mr. Black','#12345678B','03','06'),
('Mr. Black','#98765432B','04','07')
SELECT *
FROM @T
Tablix 设置步骤
- 在包含 SSRS 中每个字段的 tablix 上突出显示数据行。
- 用 3 行右键单击现在可见的行 header。
- Select 添加群组 > Parent 群组
- 在group by下拉select人然后OK
- 报告现在将按人员列分组。
如果您不想在分组右侧显示人员列,只需删除该列即可。
我需要在 SSRS 中制作一个将以这种格式输出数据的报告:
Person | DocumentID | Data1 | Data2 | .....
----------------------------------------------
Mr. Smith | | | |
| #123021312 | 01 | 04 | .....
| #132145681 | 07 | 00 | .....
Mr. Black | | | |
| #912205112 | 11 | 08 | .....
| #131135810 | 03 | 05 | .....
..............................................
因此,查询有一种层次结构。有明细记录(关于文件的数据)和组记录(人)。如果我只执行 GROUP BY,我将只能看到组记录,并显示一些聚合信息,例如 Data1 的最大值或文档 ID 的计数。相反,我希望能够同时看到聚合行和详细信息行。
我尝试使用谷歌搜索,但找不到任何关于这在 T-SQL(或 SSRS,就此而言)中是否可行的信息。是吗?
是的,这是可能的....
平面数据
Declare @T TABLE (Person VARCHAR(25), DocumentID VARCHAR(25), Data1 VARCHAR(25), Data2 VARCHAR(25))
INSERT INTO @T (Person,DocumentID,Data1,Data2) VALUES
('Mr. Smith','#12345678A','01','04'),
('Mr. Smith','#98765432A','02','05'),
('Mr. Black','#12345678B','03','06'),
('Mr. Black','#98765432B','04','07')
SELECT *
FROM @T
Tablix 设置步骤
- 在包含 SSRS 中每个字段的 tablix 上突出显示数据行。
- 用 3 行右键单击现在可见的行 header。
- Select 添加群组 > Parent 群组
- 在group by下拉select人然后OK
- 报告现在将按人员列分组。
如果您不想在分组右侧显示人员列,只需删除该列即可。