我有一张桌子,我需要在列的每个值上加上一个序列号(没有重复)。
我是通过使用此编辑每个列来手动完成的,|
UPDATE mytable where column = '123'
SET table_column1 = '955';
然后下一个
UPDATE mytable where column = '124'
SET table_column2 = '956';
但是这个需要时间。
有任何解决方案或最快的方法吗?
我想我会添加另一个自动增量,但建议增加2个?
下方数据的屏幕截图答案 0 :(得分:1)
您无法添加其他自动增量。但如果您不关心特定订单,则可以使用一个查询来执行此操作
UPDATE mytable
cross join (select @rank := 0) r
SET table_column2 = 956 + (@rank := @rank + 1)
如果您需要特定订单,则可以在查询外定义@rank
变量并添加order by
set @rank := 0;
UPDATE mytable
SET table_column2 = 956 + (@rank := @rank + 1)
order by id