AP_MergeSql
2024-10-21 07:57:57
SELECT 'Rows updated:',COUNT(1) FROM (SELECT 1 FROM DELTA.PRMCN WHERE ETL_FLAG IN ('A','D')) S; --重跑:删除已跑入数据
DELETE FROM CCRD.PRMCN WHERE JOB_SEQ_ID= New_JOB_SEQ_ID; --重跑:从历史表恢复数据
INSERT INTO CCRD.PRMCN(CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,EFF_DT,END_DT,JOB_SEQ_ID)
select CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,EFF_DT,END_DT,JOB_SEQ_ID
from ODSHIS.PRMCN WHERE NEW_JOB_SEQ_ID= New_JOB_SEQ_ID; --重跑:删除已跑入历史数据
DELETE FROM ODSHIS.PRMCN WHERE NEW_JOB_SEQ_ID= New_JOB_SEQ_ID; --备份数据到历史表
SELECT 'Rows readed:',COUNT(1),'Rows changed:',COUNT(1) FROM (SELECT 1 FROM DELTA.PRMCN WHERE ETL_FLAG IN ('I','A','D')) S;
SELECT 'Rows updated:',COUNT(1) FROM NEW TABLE (
INSERT INTO ODSHIS.PRMCN(CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,EFF_DT,END_DT,JOB_SEQ_ID,NEW_JOB_SEQ_ID)
select CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,EFF_DT,END_DT,JOB_SEQ_ID,New_JOB_SEQ_ID
from CCRD.PRMCN T
WHERE T.END_DT='9999-12-31' AND EXISTS ( SELECT 1 FROM DELTA.PRMCN S
WHERE T.CATEGORY=S.CATEGORY )
); --断链
MERGE INTO CCRD.PRMCN T
USING (SELECT * FROM DELTA.PRMCN WHERE ETL_FLAG IN ('I','D','A')) S
ON T.CATEGORY=S.CATEGORY AND T.END_DT='9999-12-31'
WHEN MATCHED THEN UPDATE SET
T.END_DT='#DATEOFDATA#', T.JOB_SEQ_ID= New_JOB_SEQ_ID; --加链
INSERT INTO CCRD.PRMCN(CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,EFF_DT,END_DT,JOB_SEQ_ID)
select CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,'#DATEOFDATA#','9999-12-31',New_JOB_SEQ_ID
from DELTA.PRMCN where ETL_FLAG in ('A','I'); --保持数据完整性
MERGE INTO CCRD.PRMCN T
USING (SELECT * FROM DELTA.PRMCN WHERE ETL_FLAG = 'D' ) S
ON T.CATEGORY=S.CATEGORY
WHEN NOT MATCHED THEN
INSERT (CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,EFF_DT,END_DT,JOB_SEQ_ID)
VALUES (CATEGORY,CATE_DESC,CURR_NUM2,PROC_DAYS,BRANCH,PDCAT_FLAG,'#DATEOFDATA#','#DATEOFDATA#',New_JOB_SEQ_ID);
以上就是对数据进行做拉链加载
最新文章
- 通过pycharm使用git[图文详解]
- 物联网框架SuperIO 2.2.9和ServerSuperIO 2.1同时更新,更适用于类似西门子s7-200发送多次数据,才能读取数据的情况
- 洛谷 P3384 树链剖分(模板题)
- css伪元素实现tootip提示框
- Problem 2136 取糖果---FUOJ (线段树+维护)
- [编]IoT The Internet of Things (IoT) 物联网
- 【python】choice函数
- TCL语言笔记:TCL中的数学函数
- 分享一个在线制作GIF格式loading图片的好网址
- 站在OC的基础上快速理解Swift的类与结构体
- Crgwin 简介及安装
- RAC某节点v$asm_disk查询hang分析处理
- C#中的?和??,null和Nullable
- 我的第二本译作《精通OpenStack》上架啦:前言、目录和样章
- 算法之二分查找PK线性查找
- 交叉编译Python-2.7.13到ARM(aarch64)平台
- @XmlAccessorType @XmlType 详解
- C# winIO32位,64位的使用(运行时要用管理员身份)
- 2017 ACM/ICPC Asia 南宁区 L The Heaviest Non-decreasing Subsequence Problem
- 服务器意外重启导致storm报错的问题处理