oracle中的merge into

MERGE INTO HSJG_TB_PULL_SCHEDUL tab1 USING (SELECT * FROM HSJG_TB_PRODUCTION_ORDER WHERE ID IN #{item} ) tab2 ON (tab1.PRODUCTID = tab2.ID) WHEN MATCHED THEN UPDATE SET tab1.ORDERID = tab2.ORDERID, tab1.IFSHOW = tab2.IFSHOW, tab1.STATUS = tab2.STATUS, tab1.CUSTID = tab2.CUSTID, tab1.DEPARTID = tab2.DEPARTID, tab1.SCHEDULEWAY = tab2.SCHEDULEWAY, tab1.SCHEDULESORT = tab2.SCHEDULESORT, tab1.INSPECT = tab2.INSPECT, tab1.MATERIAID = tab2.MATERIAID, tab1.ORDERDNUMBER = tab2.ORDERDNUMBER, tab1.ROUTE = tab2.ROUTE, tab1.BATCHNO = tab2.BATCHNO, tab1.DRAWE = tab2.DRAWE, tab1.REMARK = tab2.REMARK, tab1.TYPE = tab2.TYPE, tab1.PLANDEDATE = tab2.PLANDEDATE, tab1.DELIVERDATE = tab2.DELIVERDATE WHEN NOT MATCHED THEN INSERT (ID,ORDERID,IFSHOW,STATUS,CUSTID,DEPARTID,SCHEDULEWAY,SCHEDULESORT,INSPECT,MATERIAID,ORDERDNUMBER,ROUTE, BATCHNO,DRAWE,REMARK,TYPE,PLANDEDATE,DELIVERDATE,PRODUCTID) VALUES (s_hsjg_tb_pull_schedul.nextval,tab2.ORDERID,tab2.IFSHOW,tab2.STATUS,tab2.CUSTID,tab2.DEPARTID,tab2.SCHEDULEWAY,tab2.SCHEDULESORT, tab2.INSPECT,tab2.MATERIAID,tab2.ORDERDNUMBER,tab2.ROUTE,tab2.BATCHNO,tab2.DRAWE,tab2.REMARK,tab2.TYPE,tab2.PLANDEDATE,tab2.DELIVERDATE,tab2.ID)

猜你喜欢

转载自blog.csdn.net/weixin_39507514/article/details/86606268