oracle经验之谈

27、MERGE INTO的用法

2018-10-23  本文已影响2人  小母牛不生产奶

create table desctable( idinteger primary key, salary number(5) not null);

create table srctable( idinteger primary key, namevarchar2(20), salary number(5) not null);

insert into desctable values(1, 100);

insert into desctable values(2, 200);

insert into desctable values(3, 300);

insert into srctable values(1, '', 100);

insert into srctable values(3, '', 1000);

insert into srctable values(4, '', 400);

MERGE INTO desctable d

USING (select id, salary from srctable) s

--表名也可以

ON(d.id = s.id)

WHEN MATCHED THEN

    UPDATE set d.salary = d.salary * 1.5

WHEN NOT MATCHED THEN

    INSERT  VALUES(s.id, s.salary);


select * from desctable;

select * from srctable;

上一篇 下一篇

猜你喜欢

热点阅读