作者:1031372720_eba8d5 | 来源:互联网 | 2024-10-30 13:23
我有一个id,即主键和自动增量.是否有任何查询来更新我现有的ID并让我的id从1开始,下一个id 2等等.例如id name3 ABC5 XYZ9 PQR注意:id已经是主要和自动增量,
我有一个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表AUTO_INCREMENT = 1;不是我的解决方案.
谢谢
解决方法:
Is there any query to update my existing id and make my id start from 1 and next id 2 and so on
您可以做的是将表的内容传输到另一个表.重置自动增量计数器,将数据重新插入原始表,但让MySQL分配主键.
假设你的表名是mytable你这样做:
CREATE TABLE mytable_tmp select * from mytable;
TRUNCATE TABLE mytable;
ALTER TABLE mytable AUTO_INCREMENT = 1;
INSERT INTO mytable(name) SELECT name FROM mytable_tmp ORDER BY id;
DROP TABLE mytable_tmp;