如何计算和更新退款?
我最初在数据库中有这三行:
NO | TRANAMT | REFUNDAMT
1 | 100 | 0
2 | 200 | 0
3 | 300 | 0
如果退款是350,退款将更新如下,退款不能超过tranamt:
NO | TRANAMT | REFUNDAMT
1 | 100 | 100
2 | 200 | 200
3 | 300 | 50
再次以50退款时,它只会更新最后一条记录,退款将更新如下:
NO | TRANAMT | REFUNDAMT
1 | 100 | 100
2 | 200 | 200
3 | 300 | 100
答案 0 :(得分:1)
这是一个简单的算法(不考虑多线程和锁定):