fifo - 使用 FIFO 的到期和赎回
问题描述
我正在验证一个 FIFO 系统的赎回和到期,但我不太确定如何获得我需要的东西。该系统的配置方式是将收入、调整(上下)和赎回保存在三个不同的表中,并具有交易日期和该表唯一的交易 ID。规则非常简单。如果未在 180 天内从帐户中兑换或调整,添加到您帐户的任何收入或调整都将失效。如前所述,这使用先进先出逻辑,这对于赎回和调整都是正确的。我们最近遇到了一个问题,运行到期的作业在被发现之前被意外关闭了几个月。现在我们需要识别/验证适当的到期金额。
这是供应商的程序,因此我无法访问到期作业背后的实际代码,虽然供应商提供了他们认为正确答案的列表,但他们过去给出的答案不完整,因此我们需要验证他们的建议实际上是我们需要做的。
在考虑如何执行此操作时,我得出的结论是,您必须查看每个帐户的整个生命周期,以查看需要过期的金额,因为它始终是一个移动目标。但我无法确定如何到达终点。我可以将添加到帐户中的所有收入和调整加起来,然后减去帐户中所有赎回和调整的总和,以获得从帐户开始到任何给定时间的余额,以获得当前余额。我认为这可能有助于进入到期金额的最后一步,但我无法弄清楚下一步。
表结构:
Earnings (
Accountnum bigint,
TransDate datetime,
Amount numeric(18,2)
)
Adjustments (
Accountnum bigint,
TransDate datetime,
Amount numeric(18,2)
)
Redemptions (
Accountnum bigint,
TransDate datetime,
Amount numeric(18,2)
)
解决方案
推荐阅读
- python - python中的tkinter在窗口中心对齐网格
- laravel - laravel 分页问题 - 所有链接类型都来了
- c - 在 C 中使用二维数组与一维数组的按位运算符进行乘法
- reactjs - 从 redux-store 在页面上渲染文本
- css - 使用 flexbox 创建列
- java - 再次调用 JavaFX 弹出窗口时抛出异常
- flutter - 如何在 Flutter 容器中设置背景颜色
- mysql - 从用户 id 等于用户电子邮件的另一个表上的 id 的表中删除
- sql-server - 将具有数据透视结构的 SQL 查询从一个表复制到另一个表
- python - 通过 python 发送电子邮件