Reporting Services - 如果等于A,则计算列值

daw*_*onz 11 reporting-services

我有一个名为'dsAllStuTargetData'的数据集 - 我正在尝试计算"目标"列中出现的"A"值的数量.

我正在使用带有表达式的文本框来执行此操作,我可以使用以下内容计算值的总数:

=Count(Fields!Target.Value, "dsAllStuTargetData")
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试计算值等于'A'的位置时,它不起作用.

=Count(IIF(Fields!Target.Value, "dsAllStuTargetData")="A",1,0)
Run Code Online (Sandbox Code Playgroud)

Ian*_*ton 30

对于这种情况,你需要一个Sum,而不是一个Count,例如:

=Sum(IIf(Fields!Target.Value = "A", 1, 0), "dsAllStuTargetData")
Run Code Online (Sandbox Code Playgroud)

Count将只计算行数; 在IIf没有做任何事情有-有点像CountDistinct在某些情况下会受到影响,但是这不会在这里工作.

但是,Sum将获取满足IIf条件的所有行的总数,即1DataSet 中所有值的总和,这是您所追求的.