我有一個包含 3 列的資料表:周、型別和單位。我想計算每種型別的單位每周變化,結果表將如下所示:
Week Type Units Change
2020-12-01 A 10 null
2020-12-01 B 15 null
2020-12-01 C 20 null
2020-12-01 D 18 null
2020-12-08 A 20 10
2020-12-08 B 15 0
2020-12-08 C 25 5
2020-12-08 D 15 -3
...
我嘗試使用滯后功能,但失敗了,可能是因為我很困惑在 partition by 和 order by 中使用什么。有人可以幫幫我嗎?
uj5u.com熱心網友回復:
由于您想要相同“型別”的先前“單位”,因此磁區位于“型別”上。
SELECT *
, Units - LAG(Units) OVER (PARTITION BY [Type] ORDER BY [Week]) AS Change
FROM data_table
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/401902.html
標籤:sql sql-server 查询语句 聚合函数
