日期:2014-05-18  浏览次数:20386 次

一个自存在insert的问题
表A  
ID   TYPE
1       A
2
3       A
4
5
6
7       A
8
0       A
11
表B
ID
4
6
74
4
7
3
4
7
8

在A中   查找TYPE为 'A '的记录   看其是否完全包括了表B   如果
不包括几把不包括的记录插入A中

把B中不在A中TYPE为 'A '的记录插进A中


------解决方案--------------------
insert into a select id , type = ' ' from b where id not in (select id from a where type = 'A ')
------解决方案--------------------
INSERT A(ID) SELECT ID FROM B WHERE NOT EXISTS (SELECT 1 FROM A WHERE TYPE= 'A ' AND ID=B.ID)
------解决方案--------------------

IF (NOT EXISTS (select b.* from a,b where a.id=b.id and TYPE= 'A ' ))
INSERT a select * from b

------解决方案--------------------
insert into a(id)
select id from b where not exists(select 1 from a where a.id=b.id)