首页 > 解决方案 > 在 MySql 中更新自动增量

问题描述

假设我有一个名为“ID”的自动递增列,它像 1、2、3、4 一样继续,但在 4 之后我希望它再次从 1 开始。所以它会像 1,2,3,4,1,2,3,4,1,2...等等。那么如何将自动增量重新初始化为0呢?我也试过这个,但没有解决方案。

ALTER TABLE 'TABLENAME' AUTO_INCREMENT=0

标签: mysql

解决方案


不要将数据存储与数据检索和显示混淆

create table my_table (id serial primary key);

insert into my_table values 
(1),(2),(3),(4),(5),(6),(7),(8),(9);

select id, mod(id-1,3) x from my_table;
id x
 1 0
 2 1
 3 2
 4 0
 5 1
 6 2
 7 0
 8 1
 9 2

http://sqlfiddle.com/#!9/7f460/3

另请注意,“x”的构造可以在应用程序代码中同样容易(并且可能更有效)处理


推荐阅读