对于所有行,我的表字段的一个字段设置为0。但我想在更新查询中按步骤1更新为增量值。
我怎么能在mysql中做到这一点?
答案 0 :(得分:99)
试试这个:
mysql> select @i := 0;
mysql> update bar set c = (select @i := @i + 1);
答案 1 :(得分:8)
SET @a = 0;
UPDATE customers SET id = @a:=@a+1;
你也可以这样做。
答案 2 :(得分:3)
一种方法是使用AUTO_INCREMENT列而不是原始列创建一个新表,将旧表中的所有数据插入到新表中,然后重命名新表并删除旧表。
另一种方法是使用MySQL variable运行更新查询,为每行生成一个递增的数字(以模拟在其他DBMS系统中找到的ROW_NUMBER()函数。)
答案 3 :(得分:0)
对我来说最简单的方法是删除该字段并使用自动增量重新创建它。