本文介绍如何在 SSRS 中使用 RunningValue 函数,针对特定组或整个表计算独立运行计数或唯一运行计数,并附有示例。
为了演示 SSRS 独立运行计数计算,我们使用下方的员工表,该表包含按职业分组的 15 条记录。接下来,我们使用 CountDistinct 函数显示每个组和表中的教育和收入列的独立计数。下图显示了表格报表中的记录。我们在报表中使用的 CountDistinct 表达式是:
每个组的独立计数
=CountDistinct(Fields!Education.Value)
=CountDistinct(Fields!YearlyIncome.Value)
表的独立计数
=CountDistinct(Fields!Education.Value, "Tablix1")
=CountDistinct(Fields!YearlyIncome.Value, "Tablix1")

SSRS 独立运行计数示例
为此,我将在教育的右侧添加一个新列,并将标题命名为 Dcnt Edu。接下来,右键单击 Dcnt Edu 下方的文本框并选择表达式。为了理解报表,我建议您参考 SSRS 中的 CountDistinct、图表、表格、分组 和 格式化表格 文章。
这将打开以下表达式窗口来计算独立运行计数。为了获得此结果,我们必须使用聚合函数 CountDistinct。下面的 SSRS RunningValue 代码计算每个职业组的教育的独立运行计数。
=RunningValue(Fields!Education.Value, CountDistinct, "Occupation")

类似地,在收入的右侧添加一个新列,并将其命名为 Dcnt Inc。接下来,右键单击 Dcnt Inc 下方的文本框并写入以下表达式。下面的代码将查找每个职业组的独立收入运行计数。
=RunningValue(Fields!YearlyIncome.Value, CountDistinct, "Occupation")
请单击预览选项卡,查看每个职业组的员工教育和年收入的独立运行计数。有关更多功能 >> 点击此处!

为了计算整个表的独立运行计数,我将创建另外两个新的 SSRS 列,并将其命名为 FDC Edu 和 FDC Inc。为此,您必须将组名(“Occupation”)替换为表名(“Tablix1”)或数据集名称(“DSet”)。首先,为 FDC Edu 标题下的文本框添加以下 RunningValue 表达式。
=RunningValue(Fields!Education.Value, CountDistinct, "DSet")
类似地,为 FDC Inc 下方的文本框编写以下表达式,以查找表中收入的独立运行计数。
=RunningValue(Fields!YearlyIncome.Value, CountDistinct, "DSet")
下面的报表计算了各个职业组和完整员工表的教育和年收入的独立运行计数。
