我有两张表
A B现在我想查找A表的所有的的记录 和B表中 Money 字段的总和  id ='XXX'的记录(AB表都有id这字段)
举个例子查找出来的结果是id   name    money
1     KK      999
2     yy      888

解决方案 »

  1.   


    select 
    a.ID,a.Name,[money]=sum(isnull(b.[money],0))
    from 
    a
    left join 
    b on a.ID=b.ID
    group by a.ID,a.Name
      

  2.   

    select a.id,a.name,sum([b.money]) as [money]
    from a join b on a.id=b.id
    where b.id='xxx'
    group by a.id,a.name
      

  3.   

    select a.id,a.name,sum([b.money]) as [money]
    from a join b on a.id=b.id
    where b.id='xxx'
    group by a.id,a.name
      

  4.   

    select a.id,a.name,sum([b.money]) as [money]
    from a 
    inner join b 
      on a.id=b.id and b.id='xxx'
    group by a.id,a.name
      

  5.   

    能不能不写a.id,a.name,用一个简洁的方法来写啊,我有很多的字段呢
      

  6.   


    select a.id,a.name,sum([b.money]) as [money] 
    from a join b on a.id=b.id 
    where b.id='xxx' 
    group by a.id,a.name 
      

  7.   

    那你就select a.*,b.XX,c.XX from ....
      

  8.   

    可以不写啊,去掉不就行
    select sum([b.money]) as [money] 
    from a join b on a.id=b.id 
    where b.id='xxx' 
    group by a.id,a.name 
      

  9.   

    a与b进行左联接,再聚合查询
    select a.id,a.name,sum(isnull(b.money,0)) as [money] 
    from a join b on a.id=b.id 
    where b.id='xxx' 
    group by a.id,a.name 
      

  10.   

    select sum(b.money) as money 
    from a join b on a.id=b.id 
    where b.id='xxx' 
    group by a.id,a.name 
      

  11.   

    select a.id,a.name,sum([b.money]) as [money] 
    from a join b on a.id=b.id 
    where b.id='xxx' 
    group by a.id,a.name