删除列的值,然后按递增顺序放置值

时间:2014-04-03 06:25:21

标签: mysql database

我在测试表中填充了100条记录,其中所有行都具有相同的内容。例如,如果我在表中有一个名为BatchId_bi的列,则对于从1到100开始的所有行,我为此列插入了值100。同样,所有其他行都是相同的。当我将这些记录插入另一个数据库时,这会在跟踪重复记录方面造成问题。

有没有办法,我可以删除列BatchId_bi的所有100个值,并为{1}}为行1插入值,为{2}插入1,依此类推,直到{{1对于第100行。这对我来说更有意义。

请告诉我。

谢谢

2 个答案:

答案 0 :(得分:0)

我认为你在寻找这个

  

删除列

ALTER TABLE test_table DROP BatchId_bi
  

添加AutoIncremnt列

ALTER TABLE test_table ADD BatchId_bi INT NOT NULL AUTO_INCREMENT
  

如果你想用101开始增量,那么试试这个

ALTER TABLE test_table AUTO_INCREMENT=101;

答案 1 :(得分:0)

将BatchId_bi设置为自动增量键是最佳选择。    否则,您可以尝试将其作为解决方法

update TABLE set BatchId_bi = 0 ; 
replace into TABLE(BatchId_bi,[all your columns])
select @a:=@a+1 AS  BatchId_bi,[all your columns] from(select @a:=0) A ,TABLE B
;
delete from TABLE where BatchId_bi = 0 ;