如何从列组中排除空值以计算SSRS中的StDev?

时间:2017-03-01 17:29:30

标签: reporting-services stdev

我必须为我的列组计算StDev。问题是它采用计算空值。 我用这个:

=IIF(Fields!estNumerique.Value = 0, "n/a",Replace( Format( StDev( cDec( Replace( IIF(Fields!estNumerique.Value = 0, nothing, Fields!result.Value) ,",",".")))   ,"0.000") ,".",","))

我得到了这个结果: result

我使用以下方法计算平均值,但对于StDev,我找不到解决方案:

=IIf(Fields!SomeField.Value = 0, 0, Fields!SomeOtherField.Value / IIf(Fields!SomeField.Value = 0, 1, Fields!SomeField.Value))

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

StDev函数忽略NULL个值。将0转换为NULL,你做得很好。问题是您的CDec函数正在将NULL更改为0.所以只需删除它。

编辑:

试试这个:

=IIF(Fields!estNumerique.Value = 0, "n/a",Replace( Format( StDev( Replace( IIF(Fields!estNumerique.Value = 0, Nothing, CDec(Fields!result.Value)) ,",","."))   ,"0.000") ,".",","))