EmpNo部门销售 1 10 9 2 20 7 1 10 10 1 10 5 3 10 3 3 10 8 1 10 11 4 30 5 4 30 5
EmpNo部门的销售增长 1 10 5 5 1 10 9 4 1 10 10 1 1 10 11 1 3 10 3 3 3 10 8 5 2 20 7 7 4 30 5 5 4 30 6 1
答案 0 :(得分:0)
您可以使用LAG
来获取雇员划分的最后一个值,但是您需要一个附加列(例如ID或日期)来对这些列进行排序。这是一个简单的示例,仅包含示例的前几条记录(添加id
列):
SELECT *,
Sales - LAG(Sales, 1, 0) OVER (PARTITION BY EmpNo ORDER BY Id) AS Growth
FROM SalesData
带有示例数据
;WITH SalesData (Id, EmpNo, Dept, Sales) AS (
SELECT 1, 1, 10, 9
UNION ALL SELECT 2, 1,10, 10
UNION ALL SELECT 3, 2, 10, 7
)
SELECT *,
Sales - LAG(Sales, 1, 0) OVER (PARTITION BY EmpNo ORDER BY Id) AS Growth
FROM SalesData
此示例产生:
Id EmpNo Dept Sales Growth
----------- ----------- ----------- ----------- -----------
1 1 10 9 9
2 1 10 10 1
3 2 10 7 7