x y 取得累計數,依據x群組重新計算
-----------
A 100 --> 100
A 200 --> 300
A 300 --> 600
B 200 --> 200
B 400 --> 600
SELECT x, SUM(y) OVER (PARTITION BY x ORDER BY x,y)
FROM demo
ORDER BY x,y
結論 : 某些情況下,直接在SQL下取得累計數是必須的,
例 : Reporting Service 取得累計後無法在累計數量上做其他判斷 (First / Last / Count ...) ,
此時將SQL直接帶入就解決了
另 SUM 改為其他匯總函數也是可以的,
例 : Count(y) OVER (PARTITION BY x ORDER BY x,y),其用途再累計x群組的累計筆數
沒有留言:
張貼留言