我想用一個sql計算累計數, 請多多指教如何寫.如有一表
PKey    Date#        Qty    
A     2005-1-1       10
A     2005-1-2       20
A     2005-1-3       40得結果為PKey   Date#         Qty     cumQty
A      2005-1-1      10        10
A      2005-1-2      20        30
A      2005-1-3      40        70

解决方案 »

  1.   

    declare @t table(pkey char ,date datetime,qty int)
    insert @t select 'a','2005-1-1',10
    union all select 'a','2005-1-2',20
    union all select 'a','2005-1-3',40select *,sumqty=(select sum(qty) from @t where date<=a.date )
    from @t a
      

  2.   

    declare @tab table(PKey varchar(20),Date1 varchar(20),Qty int)insert @tab values('A','2005-1-1',10)
    insert @tab values('A','2005-1-2',20)
    insert @tab values('A','2005-1-3',40)select PKey,Date1,Qty,[sumQty]=(select sum(Qty) from @tab where Date1<=a.Date1)
    from @tab a
      

  3.   

    select a.*,cumQty = (select sum(Qty) form Sale where Date#<a.Date#)
    from Sale as a order by Date#