利差的计算

在一般的数据库设计中,一般无法保留客户每天的资金情况,一般只保留资金增量表,但因为利息积数是每天变化,故保留的利息积数也是资金变化当日的利息积数,计算利差可不能简单的采用增量表中的利息积数。

开始考虑,对每天的利差:

round(a.balance * 企业利率/360,2) - round(a.balance * 个人利率/360,2)

但个人利率实际是不相同的,故很多时候不能直接使用个人利率,而直接采用利息计算

round((a.interest_acc - coalesce(b.interest_acc,0.00)) * 企业利率/360,2)
   - (a.pending_interest - coalesce(b.pending_interest,0.00))

a为当天余额表,b为前一交易日余额表

可是上面的算法还是有问题,如果存在结息就麻烦了

case when a.interest_acc<=b.interest_acc then round(a.interest_acc*企业利率/360,2)-a.pending_interest

else round((a.interest_acc - coalesce(b.interest_acc,0.00)) * 企业利率/360,2)
   - (a.pending_interest - coalesce(b.pending_interest,0.00))

这个只对全部结息有效,对部分结息又没办法了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值