merge

Oracle MERGE 语句详解
本文介绍 Oracle 数据库中的 MERGE 语句,该语句可以高效地从一个或多个源更新或插入数据到目标表中。文章通过具体示例展示了如何使用 MERGE 语句来更新和插入数据,并提供了条件判断的用法说明。

Merge

使用merge语句,可以从一个或者多个源来更新或者插入一个表或视图,并且你可以指定条件决定是否更新或者插入等操作,这个语句使用与大量dml操作性能提高

语法

MERGE [ hint ]

   INTO[ schema. ] { table | view } [ t_alias ]

   USING{ [ schema. ] { table | view }

        | subquery

        } [ t_alias ]

   ON( condition )

   [merge_update_clause ]

   [merge_insert_clause ]

   [error_logging_clause ] ;

比如

SQL> merge into table1 a

 2  using (select id,sal fromtable2 ) b

 3  on (a.id=b.id)

 4  when matched then update seta.str=b.sal+1

 5  deletewhere (b.sal>100)

 6  when not matched then insert(a.id,a.str)

 7  values(b.id,b.sal)

 8  where(b.sal<=100);

其中红色条件用于限制原表

 

以下是官方链接http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_9016.htm#SQLRF55042

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

朝闻道-夕死可矣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值