为列的所有行插入增量数字

时间:2011-08-30 00:07:49

标签: mysql

很长一段时间,但我正在处理一个遗留票系统,其中'id'字段(pk / auto-increment)一次自动递增1,但在某些时候,增量全局变量更改为10。所以我有很多票,其中许多票的id增加1,但随后开始增加10。我被要求掩盖它。

我创建了一个名为“ticket_id”的新int字段(不是pk而不是自动递增),并进行了一些web-app更改以读取最后一个ticket_id编号,添加1然后使用新票证保存记录。我已经更改了网络应用程序,以便在表面上使用新的“ticket_id”字段(同时仍然使用幕后的旧“id”字段)。

对于现有的票证记录 - 是否有一种简单的方法可以快速将增量值添加到新列(首先按id字段排序)? 1..2..3 ..

1 个答案:

答案 0 :(得分:0)

尝试以下内容:

$result=mysql_query("select * from my_table");

$counter =1;

while($row = mysql_fetch_assoc($result)){
 //suppose $row['id'] is your current primary key
 mysql_query("update my_table set ticker_id=$counter where id=".$row['id']);
$counter++;
}