2013年8月30日
摘要: 介绍: MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句。通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。 这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。 語法: MERGE [INTO [schema .] table [t_alias] USING [schema .] { table | view | subquery } [t_alias] ON ( condition ) WHEN MATCHED THEN merge... 阅读全文
posted @ 2013-08-30 09:23 垦荒牛 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 有下面两个表:将表tab1中id值与和表tab2中id值相同的行的val更新为tab2中val的值(用tab2中的val值更新tab1的val).select * from tab1; select * from tab2 最容易犯的错误是:update tab1 set val=(select val from tab2 where tab1.id=tab2.id);更新完后的结果是:select * from tab1,在tab1中有的行,如果在tab2中没有对应的行, 值被更新为null改正为:update tab1 set val=(select val from tab2 where 阅读全文
posted @ 2013-08-30 08:45 垦荒牛 阅读(2664) 评论(0) 推荐(0) 编辑