我在 MySQL 中遇到 SELECT 命令的问题。我有一个每天交换的证券数据库,期限为 1 到 1000 天(>1 mio 行)。我想获得每天(可能是每个类别)的未结金额。举个例子,假设这是我的初始数据集:
DATE VALUE MATURITY
1 10 3
1 15 2
2 10 1
3 5 1
我想得到以下输出
DATE OUTSTANDING_AMOUNT
1 25
2 35
3 15
未偿金额计算为仍然“活着”的证券交易总额。这意味着,在第 2 天有一个 10 的新交易所和两个旧交易所(10 和 15)仍然未偿还,因为它们的到期时间超过一天,第 2 天的总未偿还金额为 35。在第 3 天,有从 10 的第 1 天开始,新兑换 5 和旧兑换。即 15 未偿金额。
这是一个更直观的解释:
Monday Tuesday Wednesday
10 10 10 (Day 1, Value 10, matures in 3 days)
15 15 (Day 1, 15, 2 days)
10 (Day 2, 10, 1 day)
5 (Day 3, 5, 3 days with remainder not shown)
-------------------------------------
25 35 15 (Outstanding amount on each day)
有没有一种简单的方法可以得到这个结果?