相交表具有不同的列值

时间:2013-08-13 08:55:42

标签: sql intersect

我有一张桌子:

num type flag
--- ---- ----
11   A    1
12   A    1
13   A    1
14   A    1
15   A    1

12   B    2
13   B    2

如何编写查询以获得以下结果:

num type flag
--- ---- ----
11   A     1
14   A     1
15   A     1

2 个答案:

答案 0 :(得分:2)

select num
from your_table
where num not in
(
  select num
  from your_table
  where type = 'B'
)

答案 1 :(得分:0)

尝试使用not exists,如下所示

select * 
from tab  t
where t.type = 'A'
and not exists 
(
  select 1
  from tab t1
  where t1.type = 'B'
  and t1.num=t.num

)