假設b中另外一個不會為null的欄位name
那麽SQL:
select a.* from a,b 
where a.id=b.id(+)
and b.name is null

解决方案 »

  1.   

    select a.* from a
    where a.id not in (select b.id from b)
      

  2.   

    select a.* from a
    where a.id not in (select b.id from b)
    这个是能选出来不同的,但是一条记录显示了多次
      

  3.   

    补充一下:
    比如a中id字段有值1,2,3;b中id字段有值2,3
    那么就输出a中id=1的纪录。
      

  4.   

    select * from a where id not in
    (select id from b)
      

  5.   

    樓主你怎麽不試試2樓我的SQL呢?你只需要在表中找一個不會為Null的欄位把那個Name換掉就可以了。
    執行效率比not in效率高
      

  6.   

    樓主你怎麽不試試2樓我的SQL呢?你只需要在表中找一個不會為Null的欄位把那個Name換掉就可以了。
    執行效率比not in效率高不好意思,你说的我不太明白,欄位是什么啊?
      

  7.   

    select a.* from a
    where a.id not in (select b.id from b)
    这个是能选出来不同的,但是一条记录显示了多次
    不明白,不可能出现重复记录,除非你表a中,本身就有重复记录