mysql如何通过自动递增列来更新表

时间:2012-01-14 22:32:51

标签: mysql sql

具有100K行的MySql 5.3表具有主键。

还有一个整数列,它不是键的一部分。我想更新此列以包含表的唯一编号。例如。对于第一个记录,它应该包含1,对于第二个记录等等

这也可以是一个自动增量列,但MySql不允许在非键列上自动增加。我不希望此列成为密钥的一部分,因为它从文件中填充的方式等。

那么这样的查询会是什么样子?

1 个答案:

答案 0 :(得分:5)

我不知道你为什么要做这样的事情,但可能的解决办法就是:

set @rownum:=0;
update <table> set column = @rownum:=rownum+1 order by <field>