rank
順位付けウィンドウ関数
適用対象: Databricks SQL Databricks Runtime
パーティション内のすべての値と比較した値の順位を返します。
構文
rank()
引数
この関数は引数を取りません。
返品
INTEGER
。
このウィンドウ関数の OVER
句には、ORDER BY 句を含める必要があります。
関数 dense_rank
とは異なり、rank では順位付けシーケンスにギャップが生じます。
row_number
とは異なり、rank では優先順位を決定しません。
順序が一意ではない場合、重複した順序には、同一の早い相対位置が指定されます。
例
> SELECT a,
b,
dense_rank() OVER(PARTITION BY a ORDER BY b),
rank() OVER(PARTITION BY a ORDER BY b),
row_number() OVER(PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 1 1 1
A1 1 1 1 2
A1 2 2 3 3
A2 3 1 1 1