Even though this question seems to be quite old, will post an answer for someone who reaches in here searching.
SET @count = 0;
UPDATE `users` SET `users`.`id` = @count:= @count + 1;
If the column is used as a foreign key in other tables, make sure you use ON UPDATE CASCADE
instead of the default ON UPDATE NO ACTION
for the foreign key relationship in those tables.
Further, in order to reset the AUTO_INCREMENT
count, you can immediately issue the following statement.
ALTER TABLE `users` AUTO_INCREMENT = 1;
For MySQLs it will reset the value to MAX(id) + 1
.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…