解决方案 »

  1.   

    a3.no 不唯一,导致 a2.no=a3.no 时 a2 的 (11 1 10.00)出现两次
    所以你需对 a3 加约束条件
     
      

  2.   

    是的呀,我以为有什么办法可以解决,看来不能这样链表查了。。
    如果写成 
    select a1.name,  
    (select sum(count) from a3 where no in (select no from a2 where id = a1.id )) as count ,
    sum(a2.money) as money 
    from a1 left join a2 on a1.id=a2.id  group by a1.id ;
    的结果为 但我想要 money 减去 count 的值应该怎么写呢
    25-400
    20-200