插入全部数据
INSERT INTO 目标表 SELECT * FROM 来源表; -- 2张表的字段完全一致
例如:
insert into Test1 select * from Test2;
插入指定字段
INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2,... FROM 来源表; -- 字段必须保持一致
例如:
insert into Test1(id,name) select id,name from Test2;
插入目标表中不存在的记录
INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表 WHERE not exists (select * from 目标表 where 目标表.比较字段 = 来源表.比较字段);
例如:
insert into Test1(id,name) select id,name from Test2 where not exists (select * from Test1 where Test1.id=Test2.id);
insert into Test1(id,name) select id,name from Test2 where Test2.id > 100;