--删除测试环境 create table a ( [编码] int,[名称] varchar(20) ) create table b ( [工程名] varchar(20),[编码] int )insert a select 1,'a' union select 2,'b' union select 3,'c' union select 4,'d' union select 5,'e' insert b select '工1',1 union select '工1',2 union select '工2',3 union select '工2',4--测试 select distinct b.[工程名],a.[编码],a.[名称] from b left join a on a.[编码] not in (select T.[编码] from b T where T.[工程名]=b.[工程名]) --删除测试环境 drop table a drop table b--结果 /*工程名 编码 名称 -------------------- ----------- -------------------- 工1 3 c 工1 4 d 工1 5 e 工2 1 a 工2 2 b 工2 5 e */
create table a
(
[编码] int,[名称] varchar(20)
)
create table b
(
[工程名] varchar(20),[编码] int
)insert a
select 1,'a' union
select 2,'b' union
select 3,'c' union
select 4,'d' union
select 5,'e'
insert b
select '工1',1 union
select '工1',2 union
select '工2',3 union
select '工2',4--测试
select distinct b.[工程名],a.[编码],a.[名称]
from b
left join a
on a.[编码] not in (select T.[编码] from b T where T.[工程名]=b.[工程名]) --删除测试环境
drop table a
drop table b--结果
/*工程名 编码 名称
-------------------- ----------- --------------------
工1 3 c
工1 4 d
工1 5 e
工2 1 a
工2 2 b
工2 5 e
*/