有三个表(a1,a2,a3)
a1:   单号        产品型号           序列号
      111          M111               1234
      111          M111               2311
      222          M222               5589
      222          M111               5596
      222          M111               7596
      222          M222               4485
      333          M333               8856
      
      
a2:   单号      产品编号               数量
      111         b111                   2
      222         b222                   3
      444         b444                   3a3:   编号        产品型号         
      b111          M111
      b222          M222
      b333          M333
      b444          M444
      
现我想把a1和a2两个表进行筛选与统计。形成另外两个表
one:(a1里存在,而a2里不存在,并且单号相同)   单号           产品型号            数量
   222             M111                2 two:(a2里存在,而a1里不存在,并且单号相同)   单号           产品型号            数量
   444             M444                 3
one和two各用一个SQL语句该如何实现?

解决方案 »

  1.   

    two比较好写,我还是没看懂one的意思,到底要怎么做?
      

  2.   

    One:
    select 單號,型號,select count(*) 數量 from a1 
    where 單號 not in (select Distinct 單號 from a2)
    Group by 單號,型號Two:
    select * from a2 where 單號 in (select 單號 from a1)
     and 單號+','+型號 not in (select 單號+','+型號 from a1)
      

  3.   

    注:a2的[产品编号]是从a3的[编号]里得到
        two的[产品型号]是从a3的[产品型号]里得到
         two表里不用统计它的数量