VARIANCE_SAMP 集約関数
VARIANCE_SAMP 関数は、数値の集合の標本分散 ([n-1] で除算) を戻します。
スキーマは SYSIBM です。
- expression
- 組み込み数値データ・タイプの値を戻す式。
引数が DECFLOAT(n) の場合、結果は DECFLOAT(34) になります。それ以外の場合、結果は倍精度浮動小数点値になります。結果は NULL 値の場合もあります。
この関数は、引数値から NULL 値を取り除いて得られた値の集合に対して適用されます。DISTINCT を指定すると、重複する値は除去されます。 数値が等しい複数の 10 進浮動小数点の値について DISTINCT 節が解釈される場合に、値の中の有効数字桁数は考慮されません。 例えば、10 進浮動小数点数 123.00 が、10 進浮動小数点数 123 と区別されることはありません。 照会から戻される数値の表記は、検出された表記のいずれかになります (例えば 123.00 や 123)。
この関数を空集合または 1 行のみの集合に対して適用すると、結果は NULL 値になります。 そうでない場合、結果は集合内の値の標本分散になります。
標本分散を求めるために使用される計算は、以下の式と論理的に等価です。
VARIANCE_SAMP = ( SUM(expression**2) - ((SUM(expression)**2) / (COUNT(expression))) ) /
(COUNT(expression) - 1)値が加算される順序は定義されていませんが、 すべての中間結果は結果のデータ・タイプの範囲内になければなりません。
VARIANCE_SAMP の代わりに VAR_SAMP を指定できます。
例
ホスト変数 VARNCE に、EMPLOYEE 表の 'A00' 部門に属する従業員の給与の標本分散を設定します。
ホスト変数 VARNCE のデータ・タイプは倍精度浮動小数点数です。
SELECT VARIANCE_SAMP(SALARY)
INTO :VARNCE
FROM EMPLOYEE
WHERE WORKDEPT = 'A00'サンプル表を使用して、このステートメントを実行すると、VARNCE には約 +2.19614375000000E+009 が設定されます。
以下の結果セットが参照用に表示されます。
SELECT SALARY FROM EMPLOYEE WHERE WORKDEPT = 'A00'SALARY
-----------
152750.00
66500.00
49250.00
46500.00
39250.00
5 record(s) selected.