sql当前行数据和之前行数据相加减循环处理


declare 
@sumQtyBalance decimal(18,2),
@sumOrigValueBalance decimal(18,2),
@QtyBalance  decimal(18,2),
@OrigValueBalance  decimal(18,2),
@rowIndex int
set @sumQtyBalance=0
set @sumOrigValueBalance=0
set @QtyBalance=0
set @OrigValueBalance=0
declare _cursor cursor for(select QtyBalance,OrigValueBalance,rowIndex from TEMP_0_EAP_Rpt_AM_AMDetailRpt4a34ac88_83cd_456f_ac49_a5c300cd3eca )
open _cursor;
fetch next from _cursor into @QtyBalance  ,@OrigValueBalance,@rowIndex  
while @@fetch_status = 0
begin     
  update TEMP_0_EAP_Rpt_AM_AMDetailRpt4a34ac88_83cd_456f_ac49_a5c300cd3eca
  set QtyBalance=ISNULL(@QtyBalance,0)+@sumQtyBalance,OrigValueBalance=ISNULL(@OrigValueBalance,0)+@sumOrigValueBalance
  where rowIndex=@rowIndex
   
  set @sumQtyBalance=ISNULL(@QtyBalance,0)+@sumQtyBalance
  set @sumOrigValueBalance=ISNULL(@OrigValueBalance,0)+@sumOrigValueBalance
   
  fetch next from _cursor into @QtyBalance  ,@OrigValueBalance,@rowIndex  
end
close _cursor
deallocate _cursor

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM