row_number
排名視窗函式
適用于: Databricks SQL Databricks Runtime
根據視窗分割中的資料列順序,為每個資料列指派唯一的循序數位,從一個開始。
語法
row_number()
引數
函式不接受引數。
傳回
INTEGER
。
window 函 OVER
式的 子句必須包含 ORDER BY 子句 。
與 和 dense_rank
不同 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