我有一个数据集
Column1 Column2 Column3 Column4 Column5 Column6 Column7 Column8 Column9 Column10
1 a d 1 1 0+1 2 1 2 1
1 b e 1 1 1+3 8 4 2 1
1 b e 2 1 1+3 8 4 2 1
1 b e 3 1 1+3 8 4 2 1
1 b e 5 1 1+3 8 4 2 1
1 c f 1 1 0+1 2 1 2 1
我希望我的报告显示为
Column1 Column2 Column3 Column4 Column5 Column6 Column7 Column8 Column9 Column10
1 a d 1 1 0+1 2.00 1 2.00 1
1 1 2.00
1 b e 2 1 1+3 8.00 4 2.00 1
1 3 2.00
1 5 2.00
1 c f 1 1 0+1 2.00 1 2.00 1
基本上,我需要将具有相同数据的行合并在一起(仅适用于某些列)。有可能在rdl中实现吗?我碰到一个论坛,说在rdl中无法实现。我也尝试过使用子报表,但无法实现所需的布局。还是我需要以某种方式更改数据集?
答案 0 :(得分:0)
这应该有效;
;with T as
(select ROW_NUMBER() OVER (PARTITION BY Column1,column2,column3,column5,column6,column7,column8,column9,column10 ORDER BY Column4) rn
,Column1
,column2
,column3
,column4
,column5
,column6
,column7
,column8
,column9
,column10
from <your_table_name>
)
select
Column1
,case rn when 1 then column2 else '' end as column2
,case rn when 1 then column3 else '' end as column3
,column4
,case rn when 1 then column5 else '' end as column5
,case rn when 1 then column6 else '' end as column6
,case rn when 1 then column7 else '' end as column7
,case rn when 1 then column8 else '' end as column8
,case rn when 1 then column9 else '' end as column9
,case rn when 1 then column10 else '' end as column10
from T