我一直在寻找一种方法来复制行,并将其插入到表中,但是使用不同的id值(其类型是auto increment)。
我可以通过手动指定每一列来完成这项工作,但是由于有许多列,而且这些列将来可以添加或删除,所以我想使用一些简单的查询来完成这项工作,而不必指定每个列名。

最佳答案

试试这个:

CREATE TEMPORARY TABLE temp_table SELECT * FROM source_table WHERE ...;
ALTER TABLE temp_table DROP COLUMN column_with_auto_increment;
INSERT INTO source_table SELECT * from temp_table; DROP TABLE temp_table;

关于mysql - 除auto_increment列以外,是否有任何MySQL命令复制行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12488223/

10-11 13:17