第1个回答 推荐于2018-03-04
select a.name,money1,money2 from
(
select name,sum(money) as money1
from table
where idate>1
) a
innser join (select name,sum(money) as money2
from table
where idate<1
) b on a.name=b,name本回答被提问者和网友采纳
第2个回答 2014-04-15
用一个sql语句即可是 实现,以下是oracle的写法,sqlserver的写法只需将decode 换成case when then 结构即可
select decode(a.name,null,b.name,a.name),a.money1,b.money2 from
(select name,sum(money) as money1 from tablewhere idate>1)a full join
(select name,sum(money) as money2 from tablewhere idate<1)b on a.name=b.name