您的位置:首页 > 数据库 > Oracle

merge into user用法、oracle实例

2017-12-17 16:56 381 查看
user表有id,name,age三个字段。执行下面的sql:

merge into user   

using(select '12' as id,  

       '小丸子' as name,  

         '20' as age  

         from dual) t//--别名

on user.id= t.id  

when mathed then//--情形1

update set user.name=t.name ,  

           user.age=t.age  

when not matched then //--情形2

insert 

(id ,name,age)  

values  

(sys_guid(),t.name,t.age);  

=====================这条sql的作用:

1、如果user表中 有 

id为12的一条记录,

         就把它的name、age分别 更新 为 '小丸子'、20.

2、如果user表中 没有

id为12的一条记录,

      就 新增 一条内容为t的记录(id、name、age分别为sys_guid()、'小丸子'、20).

 ======================            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: