我有一组会计数据,我需要使用MySQL查询,但我不知道如何将一个月的期末余额转换为下个月的期初余额。
下面是一个例子:2020年4月,账户101的期末余额为200美元。我希望这200美元是2020年5月同一个账户(101)的起始余额。
我已经在网上搜索了解决方案,但他们都假设你正在使用当前日期,这对我不起作用。有人能帮我吗?我真的很感激!
该表目前看起来如下所示:
| 日期|账户|姓名|余额|
| - -----|- -----|- -----|- -----|
| 2020年4月30日|一百零一|机器|两百块|
| 2020年5月30日|一百零一|机器|三百块|
| 2020年6月30日|一百零一|机器|四百块|
| 2020年7月30日|一百零一|机器|五百块|
预期输出:
| 日期|账户|姓名|期初余额|期末余额|
| - -----|- -----|- -----|- -----|- -----|
| 2020年4月30日|一百零一|机器|零|两百块|
| 2020年5月30日|一百零一|机器|两百块|三百块|
| 2020年6月30日|一百零一|机器|三百块|四百块|
| 2020年7月30日|一百零一|机器|四百块|五百块|
- 请注意,该表过于简化。有数百个账户,每天有多笔交易的交易。
到目前为止,我所做的只是在 Jmeter 板方面,所以相当乏味。如果可以通过SQL来实现,那将使它变得简单得多。
2条答案
按热度按时间dwbf0jvd1#
正如@GMB在评论中提到的,您可以使用窗口函数
lag()
来检索当前行之前的行:Demo here
vfwfrxfs2#
使用
INSERT INTO ... SELECT
,其中SELECT
查询只是将4月份的期末余额复制到5月份。