COVARIANCE 集約関数
COVARIANCE 関数は、数値の組の集合に関する (集団) 共分散を戻します。
スキーマは SYSIBM です。
- expression1
- 組み込み数値データ・タイプの値を戻す式。
- expression2
- 組み込み数値データ・タイプの値を戻す式。
引数のいずれかが 10 進浮動小数点数である場合、結果は DECFLOAT(34) になります。そうでない場合、結果は倍精度浮動小数点数になります。 結果は NULL 値の場合もあります。
この関数は、引数の値から導出されたペアの集合 (expression1, expression2) から、 expression1 または expression2 のどちらかが NULL であるすべてのペアを除外したものに対して適用されます。
この関数が空のセットに適用されると、結果は NULL 値になります。 それ以外の場合、結果はそのセット内の値ペアの共分散になります。
偏共分散を求めるために使用される計算は、以下の式と論理的に等価です。
COVARIANCE = SUM(
( expression1 - AVG(expression1) ) *
( expression2 - AVG(expression2) ) ) / COUNT(expression1)値を集計する順序は定義されていませんが、 すべての中間結果は結果のデータ・タイプの範囲内になければなりません。
COVARIANCE の代わりに COVAR または COVAR_POPを指定できます。
例
ホスト変数 COVARNCE に、EMPLOYEE 表の 'A00' 部門に属する従業員の給与と賞与の間の共分散を設定します。ホスト変数 COVARNCE のデータ・タイプは、倍精度浮動小数点数になります。
SELECT COVARIANCE(SALARY, BONUS)
INTO :COVARNCE
FROM EMPLOYEE
WHERE WORKDEPT = 'A00' サンプル表を使用した場合、COVARNCE はおよそ 1.68888888888889E+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.