菜鸟请教个各位大神!!急!!
有个问题想请教各位大拿朋友们,小弟才疏学浅,望见谅!!
INSERT INTO MKDATA.TB_MK_BOT_ERR_DTL(
TAGID
,TID
,BILLID
,MAKETIME
,TEAMCODE
,PRODATE
,PROBATCH
,INVCODE
,EXCEPTIONDtl
,ETL_DT)
select
TAGID
,TID
,c.billid
,c.MAKETIME
,c.TEAMCODE
,c.PRODATE
,c.PROBATCH
,c.INVCODE
,case when a.tid is null then '在库存中心不存在'
else '在数据中心不存在' end as EXCEPTIONDtl
,V_START_DT
from omdata.IMS_EPC_INFO a
full outer join omdata.DPF_S_PH_BOTTAG b
on a.tid=b.tagid
and a.start_dt=V_START_DT
left join omdata.DPF_S_PRODUCTBILL c;
以上是我开发的存储过程的SQL核心代码,就是比较ID在两个表中存在与否,A有则B表示不存在,B有则表示A不存在。我的问题是:
该存储过程执行的时候是全局执行,就是两个表都进行检索比对,我不想让他们全比对,我只需要比对增量数据就可以了,还有就是如果历史数据中,A表和B表都存在了,就不进行比对了。就这个需求。望各位大神们指教指教。。。万分感谢!!!
on b.billid=c.billid
and b.start_dt=V_START_DT
and (a.tid is null or b.tagid is null);
/*SQLEND*/
V_SQLCOUNT := SQL%ROWCOUNT;