本文只是用merge语句来实现仓库数据的增量更新,与以往使用的update、delete、insert并没有本质不同;之所以单独记录在这里,就是为了备查。
本文中使用的测试数据及其表结构,参见《仓库数据增量更新加载算法(支持混乱日期跑批) ,原文地址:http://blog.csdn.net/nsj820/article/details/6082478》博文;此文中数据重跑必须从需要重跑的那一天跑到当前日期;相应的测试代码都在存储过程脚本的下方,可供参考使用。
CREATE OR REPLACE PROCEDURE P_T100_BAL_IU_USE_MERGE
(P_ETLDATE IN VARCHAR2, --日期参数
O_RUNSTATUS OUT NUMBER, --执行结果
O_MSG OUT VARCHAR2 --错误返回
) AS
--Procedure Name:P_T100_BAL_IU
--Author :nisj
--Script File :P_T100_BAL_IU.SQL
/*###################################################*/
--Souce Databse.table :
--ODS_CMIS_YE ODS余额表(提供的是增量更新数据)
/*###################################################*/
--Target Databse.table :
--EDW_T100_BAL_IU 余额(增量更新方式加载)表
/