我用以下语句找出了重复行
SELECT a.* from table1 as a,(select ljh,date,count(*) as yy from table1 group by ljh,rq) as b
where b.ljh=a.ljh and b.date=a.date and b.yy>1 order by a.ljh,a.date
将问题分解:
一、对date分组求money
select T,date,sum(money) into #T from Table group by date,T
select * from #T
得到如下 :
T date money
----------- ------------------------------------------- -----------------------1 2005-05-01 00:00:00.000 2200.00
1 2005-06-01 00:00:00.000 4200.00
二、
对得到的结果集汇总:
Select T.T,T.date,T.money ,'leiji'=(Select sum(money) from #t where date<=T.date)
from #T as T
结果如下:
T date money leiji
----------- ------------------------------------------------------ ---------------------------------------- ----------------------------------------
1 2005-05-01 00:00:00.000 2200.00 2200.00
1 2005-06-01 00:00:00.000 4200.00 6400.00
1 2008-05-01 00:00:00.000 10000.00 16400.00
应该是这样的,你试一下!!!
select A.t,A.date,A.money,(select sum(money) from a where date<=A.date) as leiji from
(select t, date, sum(money) from a group by t,date)A