在SQL 中按組鍵對行進行順序編號
在SQL 中,您可以使用ROW_NUMBER() 函數對鍵組中的行進行順序編號。此函數為分割區中的每一行指派一個唯一的編號,該編號由 PARTITION BY 子句定義。
文法:
SELECT *, ROW_NUMBER() OVER (PARTITION BY key_column ORDER BY order_column) - 1 AS row_number FROM table_name
範例:
考慮提供:
CODE | NAME |
---|---|
A | Apple |
A | Angel |
A | Arizona |
B | Bravo |
C | Charlie |
C | Cat |
D | Dog |
D | Data |
D | Down |
D | Doppler |
SELECT CODE, ROW_NUMBER() OVER (PARTITION BY CODE ORDER BY NAME) - 1 AS C_NO, NAME FROM MyTable
CODE | C_NO | NAME |
---|---|---|
A | 0 | Apple |
A | 1 | Angel |
A | 2 | Arizona |
B | 0 | Bravo |
C | 1 | Charlie |
C | 0 | Cat |
D | 0 | Dog |
D | 1 | Data |
D | 2 | Down |
D | 3 | Doppler |
考慮要在CODE群組中依序對行進行編號,請使用以下查詢:
Sybase
MySQL 8.0 Maria 10.SQL2 這涵蓋了最常用的 SQL 資料庫。以上是如何在 SQL 中按群組對行進行順序編號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!