欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

merge中using能不能用dblink,该如何处理

更新时间: 2014-01-05 02:14:15 责任编辑: Author_N1

 

merge中using能不能用dblink
如题,我在写sql的时候用merge时在using里面使用了dblink,oracle报错提示缺失on关键字,求大神指导
MERGE INTO L2_TB S
USING TEST.TB_HOS@CLOUD.WORLD Y
ON S.ID=(CASE WHEN TRIM(Y.JLHH) IS NOT NULL THEN Y.LSH||LPAD(Y.JLHH,6,'0')
      ELSE Y.LSH||'000000' END)
WHEN MATCHED THEN
UPDATE SET(ZHH,KH,XM,SFZH,JSRQSJ,JYRQ,DIC_ID,DIC_MC,KSBM,KSMC,YSGH,YSXM,JSLXBZ)=
              (SELECT B.ZHH,A.KH,B.XM,B.SFZH,A.JSRQSJ,A.JYRQ,A.DIC_ID,C.NAME,A.KSBM,A.KSMC,A.YSGH,A.YSXM,A.JSLXBZ
             FROM TEST.TB_HOS@CLOUD.WORLD A,TEST.TB_ZH@CLOUD.WORLD B,TEST.TB_DIC@CLOUD.WORLD C
               WHERE A.KH=B.KH AND A.DIC_ID=C.ID AND LENGTH(A.KH)=9  AND SUBSTR(A.LSH,3,4)='0101';)
WHEN NOT MATCHED THEN 
INSERT(ZHH,KH,XM,SFZH,JSRQSJ,JYRQ,DIC_ID,JGMC,KSBM,KSMC,YSGH,YSXM,JSLXBZ)
    SELECT B.ZHH,A.KH,B.XM,B.SFZH,A.JSRQSJ,A.JYRQ,A.DIC_ID,C.NAME,A.KSBM,A.KSMC,A.YSGH,A.YSXM,A.JSLXBZ
         FROM TEST.TB_HOS@CLOUD.WORLD A,TEST.TB_ZH@CLOUD.WORLD B,TEST.TB_DIC@CLOUD.WORLD C
         WHERE A.KH=B.KH AND A.DIC_ID=C.ID AND LENGTH(A.KH)=9;

--参考方法--
on后面的条件用()括起来
--参考方法--
引用:
on后面的条件用()括起来


官方参考文档:MERGE
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:14:15
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7341/
本文WWW.DOC100.NET DOC100.NET版权所有。