Hello是否有一个mysql命令循环遍历表的所有行并重置从特定值开始的主键,例如从5000以上? 我不只是想重置下一个输入的主键,而是更新所有现有行。
这不是我需要的:
ALTER TABLE t1 AUTO_INCREMENT = 1;
答案 0 :(得分:0)
您可以使用变量并在设置每行中的值后更新它。 (例如:假设您的列名称为id
):
SET @startVal=5000 - 1; # we will increment startVal in every loop so we subtract 1 to begin with
UPDATE t1 SET id=(@startVal:=@startVal+1);