3
回答
oracle存储过程抽取数据
【寻找人气王】邀新用户免费体验华为云服务,百元话费等你拿!   

现在项目有个需求,做个简单的ETL,想用存储过程做。

两个表(还款明细)A表、(代扣明细)B表,从表A查询出几列数据更新到表B的某几列中(查询条件来自表B),目前还款明细(来自于B)里面只有应还款、没有实还款,银联代扣后会有一个返回,返回的数据每一行已经插入表A,现在要把返回来的扣款结果更新到还款明细中。请指点一下存储过程怎么写。

如果这种方式不够好,请问什么方式会比较符合现有业务?谢谢

举报
anyine
发帖于5年前 3回/904阅
共有3个答案 最后回答: 5年前
这个过程应该是财务上的应收与收款的核销,有点繁琐,关键问题在于每笔代扣与还款是否有线索号够关联上,如果代扣与还款明细没有关联的话,那就只能根据最早余额的办法,把2张表的记录根据时间排序,然后进行勾兑,从代扣表的第一条记录开始,拿着代扣金额到还款明细里去勾兑,有余额的话直接取下一条,余额不足的话,再继续取代扣表的第二条记录,以此类推,直到把代扣表的金额核销完。
--- 共有 2 条评论 ---
chally回复 @anyine : 其实这个与表设计的关系不太大,而是实际业务能不能反映出没一笔代扣所对应的还款记录,如果实际业务操作的过程中做不到的话,那就只能用最早余额核销的办法,如果实际业务操作中能反映出每笔代扣对应的还款,那就是就多一张表来记录对应关系。 5年前 回复
anyine就是当初他们在设计表时候的缺陷、导致现在两边不好对应上! 5年前 回复
顶部