使用循环和游标为mySQL表中的所有行编号

时间:2014-07-15 07:45:14

标签: mysql loops serialization mysqli cursor

我有一张名为“post”的表格。它有一个名为“ID”的列。它必须按顺序编号顺序编号,但由于某些编程要求,列会变得混乱,此时我需要再次对列进行重新编号。没有其他主键。

我尝试了很多使用Cursor和Looping的方法,但无济于事。

任何人都可以建议我任何方法。请包括细节。 提前感谢。

1 个答案:

答案 0 :(得分:0)

首先,你可以完全删除该列的数据,tyr执行以下命令: -

UPDATE table_name, (select @row_number:= 0) AS t
SET id = (SELECT @row_number := @row_number + 1);

要删除该列的数据,您只需使用以下命令: -

UPDATE tab SET id = NULL;

希望这可以解决您的问题。