我在同一个数据库中有两个表。具有相同的约束和相同的列名称。两个表都有自动增加的主键,我想通过使用以下查询直接从一个表插入数据到另一个表。
insert into table_name select * from table_name
所有数据都插入到表1中,但不会发生自动增量。
在图像中它们是相同的问题(图像中的表格是为测试而创建的)
答案 0 :(得分:3)
你不能使用*你应该使用没有id的列名(你插入所选的id并且不执行自动增量)
insert into table_name ( col1, col2)
select col1, col2 from table_name;