如果沒數據直接插入不是快很多麼
insert into t select * from schema.t;
http://www.cnblogs.com/linbaoji/archive/2009/08/04/1538140.html
insert into t select * from schema.t;
http://www.cnblogs.com/linbaoji/archive/2009/08/04/1538140.html
USING(SELECT * FROM TABLENAME2
WHERE IRFCNUM = NUMBERS
AND LOGDATE BETWEEN to_date(currdate||'000000', 'yyyy-mm-ddhh24miss')
AND to_date(currdate||'235959', 'yyyy-mm-ddhh24miss')) p1
ON(p2.AKTNR = p1.AKTNR
AND p2.AKTYP = p1.AKTYP
AND p2.AKART = p1.AKART)
WHEN MATCHED THEN
UPDATE SET p2.ARTTX = p1.ARTTX,
p2.AKTHE = p1.AKTHE,
p2.KSBEK = p1.KSBEK,
p2.AKVST = p1.AKVST,
p2.VKGST = p1.VKGST,
p2.SPDAB = to_date(p1.SPDAB, 'yyyy-mm-dd'),
p2.block_note = p1.block_note,
p2.note1 = p1.note1,
p2.note2 = p1.note2
WHEN NOT MATCHED THEN
INSERT (p2.AKTNR, p2.AKTYP, p2.AKART, p2.ARTTX, p2.AKTHE, p2.KSBEK, p2.AKVST,
p2.VKGST, p2.SPDAB, p2.block_note, p2.note1, p2.note2)
VALUES (p1.AKTNR, p1.AKTYP, p1.AKART, p1.ARTTX, p1.AKTHE, p1.KSBEK, p1.AKVST,
p1.VKGST, to_date(p1.SPDAB, 'yyyy-mm-dd'), p1.block_note, p1.note1, p1.note2);
因为merge into会在批量插入结束后才会commit。