Reporting services 复杂SSRS表达(平均值的平均值)
我有4个数据集,我需要计算一个字段的平均值和它们的累积平均值 以下是我的4个数据集:Reporting services 复杂SSRS表达(平均值的平均值),reporting-services,expression,ssrs-2012,expressionbuilder,Reporting Services,Expression,Ssrs 2012,Expressionbuilder,我有4个数据集,我需要计算一个字段的平均值和它们的累积平均值 以下是我的4个数据集:Dataset1、Dataset2、Dataset3、Dataset4: 这就是我想要的。我想找出平均值的平均值,如下所示: Avg(Fields!Discount.Value,"Dataset1") Avg(Fields!Discount.Value,"Dataset2") Avg(Fields!Discount.Value,"Dataset3") Avg(Fields!Discount.Value,"Data
Dataset1、Dataset2、Dataset3、Dataset4
:
这就是我想要的。我想找出平均值的平均值,如下所示:
Avg(Fields!Discount.Value,"Dataset1")
Avg(Fields!Discount.Value,"Dataset2")
Avg(Fields!Discount.Value,"Dataset3")
Avg(Fields!Discount.Value,"Dataset4")
=Avg(Avg,Avg,Avg…)
的逻辑抛出错误。所以基本上它不起作用。肯定会有办法的
我们还需要考虑到,有时其中一个数据集可能是空的(null或0)。在SSRS中有什么方法可以这样做吗?如果你不需要加权平均值,你可以使用ISNOTHING来检查空值,如:
=(IIF(ISNOTHING(Avg(Fields!Discount.Value,"Dataset1")), 0, Avg(Fields!Discount.Value,"Dataset1") ) +
IIF(ISNOTHING(Avg(Fields!Discount.Value,"Dataset2")), 0, Avg(Fields!Discount.Value,"Dataset2") ) +
IIF(ISNOTHING(Avg(Fields!Discount.Value,"Dataset3")), 0, Avg(Fields!Discount.Value,"Dataset3") ) +
IIF(ISNOTHING(Avg(Fields!Discount.Value,"Dataset4")), 0, Avg(Fields!Discount.Value,"Dataset4") ) ) / 4
AVG仅在数据集字段中工作,或通过对其进行操作返回值。如果数据集编号是静态的,则可以使用平均公式计算全局平均值
(avg1+avg2+avg3+avg4)/4
。如果你需要进一步的帮助,请告诉我。