0
需要在SSRS report里面呈现这样的结果。
PS: 我在Stackoverflow上面问了一圈,看上去都没有人解决。无意间看到MS官网,答案是说不可能。http://stackoverflow.com/questions/25602108/ssrs-how-to-create-pivot-table-result-without-blank-cells Stackoverflow也不是万能的啊。。。
问题
原始数据如下需要在SSRS report里面呈现这样的结果。
解决
- 创建测试数据
CREATE TABLE Test
([Student] varchar(1), [Class] varchar(8), [Score] int);
INSERT INTO Test
([Student], [Class], [Score])
VALUES
('A', 'English', 90),
('B', 'Computer', 78),
('B', 'Math', 88),
('C', 'Math', 55),
('C', 'Computer', 86),
('C', 'English', 64); - 将数据按照student进行partition,按照class排序。
select *, ROW_NUMBER() OVER (PARTITION BY Student ORDER BY Class) AS rn FROM Test - 用这个query在SSRS里面添加一个新的dataset。
- 添加一个table,并添加Class和Score。
- 添加一个column group on Student。
- 添加一个row group on rn,并且添加一个group header。
- 清除rn column。因为没法隐藏,只能够把里面的内容清掉,然后去掉边框去掉。
- group header里面分别用表达式
=Min(Fields!Class.Value)
&=Min(Fields!Score.Value)
- 最后把Details row隐藏起来。
PS: 我在Stackoverflow上面问了一圈,看上去都没有人解决。无意间看到MS官网,答案是说不可能。http://stackoverflow.com/questions/25602108/ssrs-how-to-create-pivot-table-result-without-blank-cells Stackoverflow也不是万能的啊。。。