在填充了数字的MySQL数据库中创建新行

时间:2011-10-04 11:40:24

标签: mysql sql

我有一个包含1200条记录的MySQL表,但现在我遇到了问题......

我需要创建一个名为index的新字段,每行包含数字1-1200。

手动输入这些内容需要一段时间,如果可能,我真的更喜欢查询来执行此操作

任何帮助表示赞赏

3 个答案:

答案 0 :(得分:2)

更新表x set index = id;鉴于你有id作为自动增量值

答案 1 :(得分:2)

这对于大量记录来说可能不是最好的方法,但是你在这里处理的是一小部分。您可以创建一个新表并将旧数据复制到其中:

CREATE TABLE my_new_table LIKE my_old_table;
ALTER TABLE my_new_table ADD COLUMN (index INT AUTO_INCREMENT ...) FIRST;
INSERT INTO my_new_table (field1, field2, field3, ....)
  SELECT (field1, field2, field3, ...) FROM my_old_table;

然后删除旧表并重命名新表。

答案 2 :(得分:1)

您可以使用循环构建SPROC并使用计数器的值来插入值。