我得到了下表,我想从中填充另一个表 各部门每年的预算减去上一年的预算。
例如2013-2014年财务预算500强:
Year Department Budget
2013 Finance 3000
2014 Finance 3500
2015 Finance 4000
2013 Marketing 4500
2014 Marketing 5000
2015 Marketing 5500
2013 Sales 3000
2014 Sales 3500
2015 Sales 4000
我不知道该怎么做。
最佳答案
在大多数现代 SQL 数据库系统中,您可以使用窗口函数。 MySQL 没有窗口函数,但您可以执行自连接将所需的值放在同一行上:
select
current.year AS year,
current.department AS department,
current.budget - previous.budget AS increase
from
budget current
JOIN budget previous
ON current.department = previous.department
AND current.year = previous.year + 1
请注意,这将省略每个部门的最早年份,因为在这些情况下没有上一年。如果需要的话,可以采取不同的处理方式。
关于mysql - 在SQL中进行行之间的计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29307863/