次の方法で共有


row_number 順位付けウィンドウ関数

適用対象:check marked yes Databricks SQL check marked yes Databricks Runtime

ウィンドウ パーティション内の行の順序に従って、各行に 1 から始まる一意の連続する番号を割り当てます。

構文

row_number()

引数

この関数は引数を受け取りません。

返品

INTEGER

このウィンドウ関数の OVER 句には、ORDER BY 句を含める必要があります。 rankdense_rank とは異なり、row_number は結合を解除します。

順序が一意でない場合、結果は非決定論的になります。

> 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