COL COL1 COL2 SUM cumm
1 2 3 6 6
4 5 6 15 21
7 8 9 24 45
上記のテーブルの結果セットでは、このようにcumm列の値が必要です。クエリでこれを行う方法、誰か助けてもらえますか?
COL COL1 COL2 SUM cumm
1 2 3 6 6
4 5 6 15 21
7 8 9 24 45
上記のテーブルの結果セットでは、このようにcumm列の値が必要です。クエリでこれを行う方法、誰か助けてもらえますか?
これを試してみてください -
クエリ:
DECLARE @temp TABLE
(
Col1 INT
, Col2 INT
, Col3 INT
, Col4 INT
)
INSERT INTO @temp (Col1, Col2, Col3, Col4)
VALUES
(1, 2, 3, 6),
(4, 5, 6, 15),
(7, 8, 9, 24)
SELECT
Col1
, Col2
, Col3
, Col4
, SUM_cumm = SUM(Col4) OVER(
ORDER BY Col4
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
FROM @temp
出力:
Col1 Col2 Col3 Col4 SUM_cumm
----------- ----------- ----------- ----------- -----------
1 2 3 6 6
4 5 6 15 21
7 8 9 24 45