如果A,B两个表中没有重复数据且表结构一样可以直接
insert into B select * from A
如果结构不一样可以
insert into B(字段列表),select 字段列表 from A
如果A,B两表中有重复数据可以
insert into B(字段列表),select 字段列表 from A where not exists(select * from B where a.keycol1 = b.keycol1)
以前做过把数据插入到临时表,所以我按照这个思路试了试。
A:遗弃表
B:使用表
现在我们不管A、B两个表的结构。
A表中的哪列数据是需要的,那么就向B表中对应的列插入就好了。 (在这里也不需要管列之间的数据类型是否相同。我尝试的时候,是没有区分它们之间的类型的,但是同样能够插入,如果有朋友碰到插入不了,那么用convert函数来转换就ok了)
两个表的结构不同
但是用下面这条sql语句插入是没有任何问题的。
insert A(name,pwd) select name,pwd from B.