Aktualisieren von Spalten mit einer Sequenznummer in MySQL
Die vorliegende Aufgabe erfordert die Aktualisierung eines Satzes von Datensätzen mit Sequenznummern und die Konvertierung eines Datensatzes wie dies:
Name | Number |
---|---|
Joe | Null |
Michael | Null |
Moses | Null |
In so etwas:
Name | Number |
---|---|
Joe | 1 |
Michael | 2 |
Moses | 3 |
Um etwas zu erreichen Führen Sie dazu in einem einzigen SQL-Befehl für MySQL die folgenden Schritte aus:
Lösung:
SET @rank := 0; UPDATE T SET Number = @rank := @rank + 1;
Alternative Lösung:
UPDATE T JOIN (SELECT @rank := 0) r SET Number = @rank := @rank + 1;
In beiden Lösungen werden die fortlaufenden Nummern generiert und mithilfe der @rank-Variablen der Spalte „Nummer“ zugewiesen. Diese Technik hilft Ihnen, den Datensätzen in einem einzigen SQL-Vorgang eindeutige und geordnete Werte zuzuweisen, was es zu einer einfachen und effizienten Möglichkeit macht, die fortlaufende Nummerierung in MySQL zu verwalten.
Das obige ist der detaillierte Inhalt vonWie ordne ich Zeilen in MySQL mit einem einzigen SQL-Befehl fortlaufende Nummern zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!