1、根据业务修改时间 upd_ts 字段,抽取 T-1 天更新 / 新增的数据
2、T-2 天的全量数据,关联 T-1 的数据,剔除历史数据中包含 T-1 天更新的数据
on a.card_no(T-2) = b.card_no (T-1)
where b.card_no is null 筛选关联不上 T-1 的部分数据
3、union all 在一起,形成最新的快照分区
拉链表 (全量表):
1、抽数同快照表
2、当天新增或者更新的数据,start_dt = 'nowdays-1',end_dt='9999-12-31'
3、将前一天的拉链表 a left join 增量数据 b , 用 Case when 判断 b.id is not null 且 a.end_dt='9999-12-31' 就是更新的部分数据 则update end_dt ='nowdays-1' else a.end_dt
4、将两部分数据 union all 一起,覆盖前一天的拉链表