oracle 拉链表 计算和,Oracle拉链表和流水表如何按照时间匹配求新的计算项

你好,我想问一下:

我有2张表一张表是张拉链表,一张表是流水表:

表结构和数据如下:

ta1:

con_no loanamt start_dt end_dt

6026947 8300 2018-6-29 2018-7-8

6026947 8300 2018-7-8 3000-12-31

ta2:

CON_NOACTUAL_REPAY_DATEACTUAL_PRNPL_LEIJI

60269472018-04-08 4150.02

60269472018-05-08 4841.69

60269472018-06-08 5533.36

60269472018-07-08 6225.03

我想得到的结果是:

ta1和ta2通过con_no关联,用ta1的开始时间start_dt去在ta2中找ta2.ACTUAL_REPAY_DATE<=ta1.start_dt 最大的ACTUAL_REPAY_DATE的对应的那条记录,计算ta1这条记录的新增计算项balance,balance= loanamt-ACTUAL_PRNPL_LEIJI

,最后达到如下这个效果:

ta3:

con_no loanamt start_dt end_dt balance(要求的值)

6026947 8300 2018-6-29 2018-7-8 8300-5533.36

6026947 8300 2018-7-8 3000-12-31 8300-6225.03

不知道这个SQL应该怎么写?

你可能感兴趣的:(oracle,拉链表,计算和)