Heim  >  Artikel  >  Datenbank  >  Wie nummeriere ich Primärschlüsselindizes in MySQL für sequentielle Werte neu?

Wie nummeriere ich Primärschlüsselindizes in MySQL für sequentielle Werte neu?

DDD
DDDOriginal
2024-10-25 02:04:02950Durchsuche

How to Renumber Primary Key Indexes in MySQL for Sequential Values?

Primärschlüsselindizes neu nummerieren

Eine MySQL-Tabelle kann einen Primärindex (typischerweise eine „id“-Spalte) haben, dessen Werte möglicherweise nicht nummeriert sind Der Reihe nach. Um dies zu beheben, ziehen Sie den folgenden Ansatz in Betracht:

Methode:

Anstatt temporäre Tabellen zu manipulieren, ist eine effizientere Technik wie folgt:

SET @i=0;
UPDATE table_name SET column_name=(@i:=@i+1);

Erklärung:

  1. Setzen Sie eine benutzerdefinierte Variable @i auf 0.
  2. Führen Sie eine UPDATE-Abfrage für die Tabelle aus.
  3. Weisen Sie für jede Zeile in der Tabelle den Wert von @i der Spalte „column_name“ zu.
  4. Erhöhen Sie @i um 1, nachdem Sie den Wert zugewiesen haben.

Beispiel:

Betrachten Sie die folgende Tabelle:

id | name
----+--------
31  | John
35  | Mary
100 | David

Die obige Methode aktualisiert die Tabelle wie folgt:

id | name
----+--------
1   | John
2   | Mary
3   | David

Das obige ist der detaillierte Inhalt vonWie nummeriere ich Primärschlüsselindizes in MySQL für sequentielle Werte neu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn