有两张表A,B B是A的子集,怎么写SQL,获得集合A-B?

解决方案 »

  1.   

    SELECT * FROM A WHERE 主键 NOT IN(SELECT 主键 FROM B)
      

  2.   

    select a.* from a left join b on a.key=b.keywhere b.key is null
      

  3.   

    select * from A where not exists(select 1 from B where A.列1=B.列1 and A.列2=B.列2)
      

  4.   

    SELECT * FROM A
    LEFT JOIN B ON A.KEY1 = B.KEY1 AND A.KEY2 = B.KEY2 ....
    WHERE B.KEY1 IS NULL
      

  5.   

    如果是多个主键:select a.* from a left join b on a.key1=b.key1 and a.key2=b.key2 --...where b.key1 is null
      

  6.   

    select a.*,b.* from table1 a left join table2 b on a.id=b.id--连接字段
    --可以在select后面指定显示列