在mysql中逐步更新值

时间:2010-12-14 12:07:48

标签: mysql sql-update

对于所有行,我的表字段的一个字段设置为0。但我想在更新查询中按步骤1更新为增量值。

我怎么能在mysql中做到这一点?

4 个答案:

答案 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)

对我来说最简单的方法是删除该字段并使用自动增量重新创建它。