在 MySQL中用序號更新列
手頭上的任務需要用序號更新一組記錄,將資料集轉換成這個:
Name | Number |
---|---|
Joe | Null |
Michael | Null |
Moses | Null |
變成類似的東西這個:
Name | Number |
---|---|
Joe | 1 |
Michael | 2 |
Moses | 3 |
要在MySQL 的單一SQL在命令中實現此目的,請按照以下步驟操作:
解決方案:
SET @rank := 0; UPDATE T SET Number = @rank := @rank + 1;
替代解決方案:
UPDATE T JOIN (SELECT @rank := 0) r SET Number = @rank := @rank + 1;
兩者中解決方案中,使用@rank 變數產生序號並將其指派給Number 欄位。此技術可協助您在單一 SQL 操作中為記錄指派唯一且有序的值,使其成為管理 MySQL 中的順序編號的簡單且有效的方法。
以上是如何使用單一 SQL 指令為 MySQL 中的行分配序號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!