我的语法可以复制具有相同字段的表中的所有记录:
INSERT INTO table2 SELECT * FROM table1 WHERE id = '7'
所以我想知道如何继续复制除'id'字段之外的所有值(因为他是主键和自动增量)。
答案 0 :(得分:1)
列出列:
insert into table2(col1, . . . coln)
select col1, . . ., coln
from table1
where id = '7';
在大多数情况下,您应该明确列出列。即使表具有相同的列但顺序不同,您也可能遇到问题。
(我要编写的代码中的一个例外是使用table1
从table2
创建create table as
的脚本。)
答案 1 :(得分:0)
您必须专门列出所有列:
INSERT INTO table2 (col1, col2, col3, ...)
SELECT col1, col2, col3, ...
FROM table1
WHERE id = '7'
答案 2 :(得分:0)
您需要明确指定要复制的字段:
INSERT INTO table2 (col1, col2, col3, etc)
SELECT col1, col2, col3, etc
FROM table1
WHERE id = '7'