4

SSRS 2008 で設計したレポートがあります。いくつかの値を持つ行があります。これは基本的に、1 から 5 までの値がある調査フォームです。一部の値は空白または N/A (回答がない場合) です。しかし、値の平均を計算している間、その特定の値が含まれています。私はそれを0として取ると思います。


   Average of (4, 5,4,4,5,2,3, ,5) = 3.56 instead of 4.00.

空白の値を考慮せずに値の平均を計算する方法を教えてください。

ありがとうございました

4

3 に答える 3

5

計算フィールドをデータセットに追加して、不要な値を除外できます。次に、正規表現を使用して読みやすくします。計算フィールド式の例を次に示します。

=iif(Fields!Score.Value > 0, Fields!Score.Value, Nothing)

これで、参照するだけ=Avg(Fields!FilteredScore.Value)で、必要に応じて機能します。

于 2013-08-02T15:08:28.540 に答える
1

組み込みの平均関数を使用する代わりに、独自の関数を作成してタスクを達成する必要があります。

数学的平均 = (全回答の合計)/(全回答の数)

あなたのケースでは、すべての空白と N/A の値を除外するように金種を変更する必要があります。

New Avg func = (すべての回答の合計)/((すべての回答の数)-(空白または N/A であるすべての回答の数))

SSRS equivalent:
=SUM(Fields!SurveyAnswer.Value)/
(Count(Fields!SurveyAnswer.Value)-
Count(IIF(Fields!SurveyAnswer="" OR UCASE(Fields!SurveyAnswer)="N/A", 1, **NOTHING**)))

OR

=SUM(Fields!SurveyAnswer.Value)/(Count(Fields!SurveyAnswer.Value)-
SUM(IIF(Fields!SurveyAnswer="" OR UCASE(Fields!SurveyAnswer)="N/A", 1, 0)))

HTH。

于 2013-08-02T11:56:45.887 に答える