SQL 中按鍵組的順序行編號
在 SQL 中,ROW_NUMBER() 函數為結果集中的行分配序號。若要按鍵組分配順序編號,請使用 PARTITION BY 子句按所需鍵將資料分組。
以下是給定表和所需輸出的範例:
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
此查詢分配連續行號(C_NO)對於每個鍵組(CODE),從0 開始,按每個組中NAME 的升序排列。
支援的資料庫:
帶有 PARTITION BY 的 ROW_NUMBER()函數以下資料庫支援:
以上是如何在 SQL 中按鍵組分配連續行號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!