a表和b表的数据结构完全相同,结构如下公司名 项目 时间 收入  比例  金额
现在将a表和b表中公司名相同而比例不同的数据筛选出来如果用
select a.*,b.*
from a,b
where a.项目  =  b.项目
and a.比例 <> b.比例好像有问题,返回的数据太多,感觉要按照项目分组先,请高手指点 

解决方案 »

  1.   

    下面的语句为何不能通过
    select * from 
    (select a.公司名,a.项目,a.比例 from a group by a.公司名,a.项目,a.比例) as c
    inner join 
    (select * from (select b.公司名,b.项目,b.比例 from b group by b.公司名,b.项目,b.比例) as d
    on c.公司名 = d.公司名
    and c.项目 = d.项目
    and c.比例 <> d.比例
      

  2.   

    select a.*
    from a a
    where exists(select 1 from b b where  a.项目 = b.项目
    and a.比例 <> b.比例)