ORACLE 10 g的 merge into 用法
查看原文:http://www.ibloger.net/article/244.html
在Oracle 10g之前,merge语句支持匹配更新和不匹配插入2种简单的用法,在10g中Oracle对merge语句做了增强,增加了条件选项和DELETE操作。下面我通过一个demo来简单介绍一下10g中merge的增强和10g前merge的用法。
参考Oracle 的SQL Reference 下面我在一下环境中做一个测试看看
创建表subs 和 acct
create table subs(msid number(9),ms_type char(1),areacode number(3)
);create table acct(msid number(9),bill_month number(6),areacode number(3),fee number(8,2) default 0.00
);
插入数据
insert into subs values(905310001,0,531);
insert into subs values(905320001,1,532);
insert into subs values(905330001,2,533);
commit
语法
-- 语法
merge [into [schema .] table [t_alias]using [schema .] { table | view | subquery } [t_alias]on ( condition )when matched then merge_update_clausewhen not matched then merge_insert_clause;
测试
--- matched:更新 not matched:插入 两者可以同步执行也可以只要一个条件
merge into acct ausing subs bon (a.msid = b.msid)when matched thenupdate set a.areacode = 22 when not matched theninsert (msid, bill_month, areacode) values (b.msid, '200702', b.areacode);
commit
增强条件查询操作
merge into acct ausing subs bon (a.msid = b.msid)when matched thenupdate set a.areacode = 22 where b.ms_type = 0when not matched theninsert (msid, bill_month, areacode) values (b.msid, '200702', b.areacode) where b.ms_type = 0;
commit
增强删除操作
merge into acct ausing subs bon (a.msid = b.msid)when matched thenupdate set a.areacode = 22delete where (b.ms_type != 0);
commit
ORACLE 10 g的 merge into 用法相关推荐
- Win7安装oracle 10 g
开始-运行-输入hdwwiz-回车 --选则手动 --网络适配器--左边选Microsoft,右边找到Microsoft Loopback Adapter --完成 打开 控制面板\网络和 ...
- (转)64bit上安装32位oracle 10 g出现错误:无法定位承诺工序输入点 getprocessimagifilenamew 于动态链接库PSAPI.DLL...
转自http://jonelove00.iteye.com/blog/1685206安 装时以最高管理员身份运行:红色字体为自己加上去的代码 找到..\database\stage\prereq\db ...
- Merge用法:Oracle 10g中对Merge语句的增强
网址: http://www.eygle.com/digest/2009/02/mergeoracle_10gmerge.html 在Oracle 10g之前,merge语句支持匹配更新和不匹配插入 ...
- oracle 实例用法,Oracle merge into用法以及相关例子示例
以下的文章主要是对Oracle merge into用法以及相关例子的介绍,首先我们以Oracle 9I中加入MERGE入手,以下就是文章的具体内容的分析,希望你浏览完之后会给你带来一些帮助在此方面. ...
- oracle中的merge into用法解析
oracle中的merge into用法解析 merge into的形式 MERGE INTO [target-table] A USING [source-table sql] B ON([cond ...
- oracle merge into 优化,ORACLE 10g 的 merge into用法
在Oracle 10g之前,merge语句支持匹配更新和不匹配插入2种简单的用法,在10g中Oracle对merge语句做了增强,增加了条件选项和DELETE操作.下面我通过一个demo来简单介绍一下 ...
- RAC分解步骤之一,在oracle linux 4u4上安装oracle 10.2.0.1.0操作日志
练习oracle的rac组建过程,第一步,先练习4u4上安装oracle 10.2.0.1.0.直接安装rac,有些难度.从简单的做起.总RAC步骤,参照小布老师的RAC组建. 1. 启动vc,登陆v ...
- day12_oracle hint——SQL优化过程中常见Oracle中HINT的30个用法
在SQL语句优化过程中,经常会用到hint, 以下是在SQL优化过程中常见Oracle中"HINT"的30个用法 1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方 ...
- Merge into 用法
Merge的用法 Merge可以完成以下功能: 1. 两个表之间数据的更新 2. 进行进销存更新库存 3. 进行表之间数据的复制 语法说明: 1. 在语句结束后一定要用分号,否 ...
最新文章
- OKR能给公司和团队带来什么价值?
- 大数据学习笔记1000条
- 长沙县这一年:战在新高地,筑牢新高台,攀向新高峰
- Laravel event 事件的简单使用
- 算法 --- 记一道面试dp算法题
- Codeforces - 102222C - Caesar Cipher
- VC++中实现INI文件读写的方法和示例
- python3 zip()函数笔记
- 新建文件夹的快捷键大全
- 清晰的史密斯圆图 wiki上的
- 计算机联锁进路控制程序框图,计算机联锁系统技术第四章
- 解读全部二十三种设计模式(附测试代码)
- 紫砂壶的起源 计算机操作题,紫砂壶的起源与历史发展你知道吗?
- 计算机组成存储单元地址分配,主存中存储单元地址的分配
- FlinkSQL JDBC 批处理 java heap space
- 大牛养成指南(2):先实现一个小目标吧!10000小时理论如何轻松落地
- Html5 Egret游戏开发 成语大挑战(七)游戏逻辑和数据处理
- Android自定义控件之实现快速检索
- 虚幻4学习的方法和途径
- YII2日常所用的教程