カテゴリ:

ウィンドウ関数 (ランク関連)

CUME_DIST

同じウィンドウパーティション内の他の値に関する値の累積分布を検索します。

構文

CUME_DIST() OVER ( [ PARTITION BY <partition_expr> ] ORDER BY <order_expr>  [ ASC | DESC ] )

引数

パーティション式

これは、行をパーティションにグループ化するために使用するオプションの式です。

順序式

この式は、各パーティション内の行の順序を指定します。

戻り値

返される値のデータ型は DOUBLE です。

使用上の注意

CUME_DIST 関数は次をサポートしません。

  • 累積フレームウィンドウ。

  • スライディングフレームウィンドウ。

SELECT
  symbol,
  exchange,
  cume_dist() OVER (PARTITION BY exchange ORDER BY price) AS cume_dist
FROM trades;

+------+--------+------------+
|symbol|exchange|CUME_DIST   |
+------+--------+------------+
|SPY   |C       |0.3333333333|
|AAPL  |C       |         1.0|
|AAPL  |C       |         1.0|
|YHOO  |N       |0.1666666667|
|QQQ   |N       |         0.5|
|QQQ   |N       |         0.5|
|SPY   |N       |0.8333333333|
|SPY   |N       |0.8333333333|
|AAPL  |N       |         1.0|
|YHOO  |Q       |0.3333333333|
|YHOO  |Q       |0.3333333333|
|MSFT  |Q       |0.6666666667|
|MSFT  |Q       |0.6666666667|
|QQQ   |Q       |         1.0|
|QQQ   |Q       |         1.0|
|YHOO  |P       |         0.2|
|MSFT  |P       |         0.6|
|MSFT  |P       |         0.6|
|SPY   |P       |         0.8|
|AAPL  |P       |         1.0|
+------+--------+------------+