日期:2014-05-18  浏览次数:20455 次

请教:银行托收,查询
select   y.aa,y.bb,y.cc,y.dd,uw.totmoney,y.ff   from   yhts   y   inner   join   usewaterinfo   uw   on   y.userid=uw.userid   where   uw.copylistyear=year(getdate())and   copylistmonth=month(getdate())     yhts表:每单位ID有1至10个不等userid,userid2,userid3~~~~(每个单位有不同个数的水表号对应不同的应收金额)   usewaterinfo表:userid,totmoney,copylistyear,copylistmonth     以上查询只能做到每单位一个userid对应的当月应收金额uw.totmoney。怎么样才能让每单位多个userid对应的当月应收金额uw.totmoney相累加as   totmoney??多谢!!

------解决方案--------------------

select id,aa,bb,cc,dd,sum(totmoney),ff,gg from
(
select id,aa,bb,cc,dd,ee,ff,gg,userid from yhts union all
select id,aa,bb,cc,dd,ee,ff,gg,userid2 from yhts union all
select id,aa,bb,cc,dd,ee,ff,gg,userid3 from yhts union all
select id,aa,bb,cc,dd,ee,ff,gg,userid4 from yhts union all
select id,aa,bb,cc,dd,ee,ff,gg,userid5 from yhts )a a
inner join usewaterinfo b on a.userid=b.userid
group by id,aa,bb,cc,dd,ff,gg