(select * from a minus select * from b)
union all
(select * from b minus select * from a)

解决方案 »

  1.   

    1.select * from a
    minus
    select * from b
      

  2.   

    1.select * from a 
    minus
    select * from b3.select * from a where not exists(select * from b where a.col1=b.col1 and a.col2=b.col2...)4.select * from b
    minus
    select * from a 
      

  3.   

    (select * from a minus select * from b)
    union 
    (select * from b minus select * from a)
      

  4.   

    谢谢大哥们,我现在有个问题。就是3的情况中,如果出现NULL的话怎么办呢? sasacat(傻傻猫) 给的方案3中,会不会出问题呢 ?
      

  5.   

    select * from( 
    (
    (select * from a minus select * from b)
    union 
    (select * from b minus select * from a)
    )
    minus
    (
    (select * from a minus select * from b)
    intersect
    (select * from b minus select * from a)
    ));
      

  6.   

    谢谢 bzszp(SongZip)大哥,我明白点了。
      

  7.   

    (select * from a minus select * from b)
    intersect
    (select * from b minus select * from a)
    不是空吗?
      

  8.   

    楼上的sql,没意义吧
    union部分:(A-B)|(B-A)=(A|B)-(A&B)
    而intersect部分:(A-B)&(B-A)=空集
    减去空集有什么用啊?!