在SSRS中,我有一个列表,例如,一个包含两列的表:名称和数字,例如:
NAME NUMBER
John 123
John 456
John NULL
名称永远不会为空,但数字可能是。在这种情况下,我希望报告在每个组中包含NULL,如下所示:
GROUP 1:
John NULL
John 123
GROUP 2:
John NULL
John 456
然而,SSRS将null置于一个组中。我该如何做到这一点?
答案 0 :(得分:1)
您已告知SSRS对NUMBER列进行分组,因此它会为NUMBER列中的每个值生成一个单独的组,然后显示这些行。要获得所需的内容,必须使数据集具有所需的行。
Select Name, Number, cast(Number as varchar(50)) as displayvalue
From mytable
UNION ALL
Select m.Name, m.Number, 'NULL' as displayvalue
From mytable m
Where exists(Select 1 from mytable where Name=m.Name and Number is NULL)
Group by Name, Number
然后对Number列进行分组,但报告DisplayValue列。