我正在尝试计算报告中的组数我知道我可以在SQL中执行此操作但是如果可以的话,我会尽量避免将冗余数据添加到我的数据集中。
我有一个MainDataSet,每个不同的组项可以有多个条目。我只想要的是不。组不是组内项目的数量。
例如以字母开头的单词,假设我只有2组A和B(注意:当我根据用户参数选择过滤MainDataSet时,组的数量可以动态改变):
Group | Data
------|-----
A | Apple
A | Ant
B | Balloon
B | Book
B | Bowl
最终结果:
Group | Index | NGroups
A | 1 | 2
B | 2 | 2
我知道我可以使用聚合函数获取索引,如下所示:
RunningValue(Fields!Group.Value, CountDistinct, "TablixName")
但我如何获得NGroups的价值呢? 我想我也可以基于MainDataSet创建另一个数据集(使用sql函数)并执行:
SELECT 'X' AS GroupCount, COUNT(Distinct Group) AS NGroups
FROM dbo.udf_MainDataSet()
WHERE FieldX = @Parameter1
然后使用LookUp:
Lookup("X", Fields!GroupCount.Value, Fields!NGroups.Value, "NewDataSet")
但是有一个我没有看到的简单解决方案吗?
答案 0 :(得分:0)
CountDistinct(Fields!Group.Value," TablixName")