COVARIANCE_SAMP 集約関数
COVARIANCE_SAMP 関数は、数値ペアの集合の標本共分散を戻します。
スキーマは SYSIBM です。
- expression1
- 組み込み数値データ・タイプの値を戻す式。 expression2
- 組み込み数値データ・タイプの値を戻す式。
引数のいずれかが 10 進浮動小数点数である場合、結果は DECFLOAT(34) になります。そうでない場合、結果は倍精度浮動小数点数になります。 結果は NULL 値の場合もあります。
この関数は、引数値から得られた (expression1, expression2) ペアの集合から、 expression1 または expression2 のどちらかが NULL であるすべてのペアを除外したものに対して適用されます。
この関数を空集合または 1 行のみの集合に対して適用すると、結果は NULL 値になります。 そうでない場合、結果は集合内の値ペアの標本共分散になります。
標本共分散を求めるために使用される計算は、以下の式と論理的に等価です。
COVARIANCE_SAMP = SUM(
( expression1 - AVG(expression1) ) *
( expression2 - AVG(expression2) ) ) / ( COUNT(expression1) – 1 )
値を集計する順序は定義されていませんが、 すべての中間結果は結果のデータ・タイプの範囲内になければなりません。
COVARIANCE_SAMP の代わりに COVAR_SAMP を指定できます。
例
ホスト変数 COVARNCE に、EMPLOYEE 表の 'A00' 部門に属する従業員の給与と賞与の間の標本共分散を設定します。 ホスト変数 COVARNCE のデータ・タイプは、倍精度浮動小数点数になります。
SELECT COVARIANCE_SAMP(SALARY, BONUS)
INTO :COVARNCE
FROM EMPLOYEE
WHERE WORKDEPT = 'A00'
サンプル表を使用した場合、COVARNCE には約 +5.42875000000000E+006 が設定されます。以下の結果セットが参照用に表示されます。
SELECT SALARY, BONUS FROM EMPLOYEE WHERE WORKDEPT = 'A00'
SALARY BONUS
----------- -----------
152750.00 1000.00
66500.00 900.00
49250.00 600.00
46500.00 1000.00
39250.00 600.00
5 record(s) selected.