如何求取累积和

如何求取累积和

declare  @t table

    (

        id int,

        SomeNumt int

    )


insert into @t

select 1,10

union

select 2,12

union

select 3,3

union

select 4,15

union

select 5,23



select * from @t

上面的选择返回以下内容。


id  SomeNumt

1   10

2   12

3   3

4   15

5   23

如何获得以下信息


id  srome   CumSrome

1   10  10

2   12  22

3   3   25

4   15  40

5   23  63


DIEA
浏览 538回答 3
3回答

茅侃侃

SQLServer(2012)的最新版本允许以下操作。SELECT      RowID,      Col1,     SUM(Col1) OVER(ORDER BY RowId ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS Col2FROM tablehhORDER BY RowId或SELECT      GroupID,      RowID,      Col1,     SUM(Col1) OVER(PARTITION BY GroupID ORDER BY RowId ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS Col2FROM tablehhORDER BY RowId这更快。分区版本在34秒内完成,超过500万行。
打开App,查看更多内容
随时随地看视频慕课网APP