COVAR_SAMP¶
グループ内のnull以外のペアのサンプル共分散を返します。次の式を使用して、null以外のペアに対して計算されます。
(SUM(x*y) - SUM(x) * SUM(y) / COUNT(*)) / (COUNT(*) - 1)
x
は独立変数、 y
は従属変数です。
構文¶
集計関数
COVAR_SAMP( y , x )
ウィンドウ関数
COVAR_SAMP( y , x ) OVER ( [ PARTITION BY <expr1> ] )
使用上の注意¶
DISTINCT はこの関数ではサポートされていません。
この関数がウィンドウ関数として呼び出される場合、以下はサポートされていません。
OVER 句内の ORDER BY 句。
明示的なウィンドウフレーム。
例¶
CREATE OR REPLACE TABLE aggr(k int, v decimal(10,2), v2 decimal(10, 2));
INSERT INTO aggr VALUES(1, 10, NULL);
INSERT INTO aggr VALUES(2, 10, 11), (2, 20, 22), (2, 25, NULL), (2, 30, 35);
SELECT k, COVAR_SAMP(v, v2) FROM aggr GROUP BY k;
+---+-------------------+
| K | COVAR_SAMP(V, V2) |
|---+-------------------|
| 1 | NULL |
| 2 | 120 |
+---+-------------------+