select a.opername,总营收=(select sum(price) from record where opername=b.name and returnticket =0 and selldate between '2005-09-01 00:00:00.000' and '2005-09-30 23:59:59.000')
from record a left join opercode b on a.opername=b.name group by a.opername

解决方案 »

  1.   

    select a.opername,总营收=sum(c.price)
    from record a 
    left join opercode b 
    on a.opername=b.name 
    left join record c
    on c.opername=a.opername and c.returnticket =0 and  c.selldate between '2005-09-01 00:00:00.000' and '2005-09-30 23:59:59.000'
    group by a.opername,c.returnticket,c.selldate
      

  2.   

    select a.opername, 总营收=sum(a.price)
    from record a opercode b 
    where a.opername =b.name
    and a.returnticket =0  
    and a.selldate between '2005-09-01 00:00:00.000' and '2005-09-30 23:59:59.000'
    group by a.opername
      

  3.   

    select a,opername,isbull(T.总营收,0) from record a,
    (select a.opername, 总营收=sum(a.price)
    from record a opercode b 
    where a.opername =b.name
    and a.returnticket =0  
    and a.selldate between '2005-09-01 00:00:00.000' and '2005-09-30 23:59:59.000'
    group by a.opername) T
    where a.opername*=T.opername
      

  4.   

    select a.opername,'总营收'=isnull(sum(price),0)
    from record a left join opercode b on a.opername=b.name 
    where a.returnticket =0 and a.selldate between '2005-09-01 00:00:00.000' and '2005-09-30 23:59:59.000'
    group by a.opername