如何为 SSRS 编写表达式,其中对首先被另一个字段值过滤的列或字段取平均值?

问题描述 投票:0回答:1

我是 SSRS 新手,我需要添加一个带有表达式的字段,该表达式将取另一个字段的平均值。添加的此字段将位于一般信息报告的标题中。棘手的部分是该列在返回的两种不同记录类型之间共享,并且在标题中这些记录类型将单独表示为平均值。

类型有舞台和活动。共享栏是完成阶段或活动所需天数的周转时间。

这远不正确,但希望有人能够向我发送正确的表达方式。

=AVG(Fields!SATURRNAROUNDTIME.Value, "rpt_CaseTurnAroundTime" WHERE First(Fields!LEVEL.Value, "rpt_CaseTurnAroundTime") = 1)

同时具有阶段和活动值的字段是 SATURNAROUNDTIME,我认为可以用作过滤器的字段是 level,其中阶段表示为 1,活动表示为 2。

上面的表达式将出现在我添加到标题中的字段上。我最终会得到 2 个阶段平均值和活动平均值。

reporting-services expression field
1个回答
0
投票

要在聚合函数内部进行过滤,可以使用 IIF。当 false 时不使用任何内容,因此它包含在平均值计算中(而 0 则包含在内)。

=AVG(IIF(Fields!LEVEL.Value = 1, Fields!SATURNAROUNDTIME.Value, NOTHING))
© www.soinside.com 2019 - 2024. All rights reserved.