我有一个 id
即主键和自动递增。是否有任何查询来更新我现有的 id
并使我的 id
从 1 开始,下一个 id 2 等等..
例如
id name
3 ABC
5 XYZ
9 PQR
注意: id
已经是主要的和自动递增的,我不想截断我的 id。
如果可能我想得到
id name
1 ABC
2 XYZ
3 PQR
ALTER TABLE table AUTO_INCREMENT = 1;
不是我的解决方案。
谢谢
最佳答案
当然有办法:
set @counter = 0;
update table_name
set id = (@counter := @counter + 1);
编辑
为避免重复键的问题,您可以在将当前 ID 临时更改为负等价物之前运行类似这样的操作:
update table_name
set id = 0 - id;
关于mysql - 如何从 1 更新 id 集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43137040/