首页 >

Oracle中merge用法

数据库|mysql教程Oracle中merge用法
Oracle存储过程,Oracle中merge用法,数据库,
数据库-mysql教程
高仿易企秀破解版源码,vscode npm窗口6,ubuntu ls乱码,tomcat 关闭缓慢,sqlite3源码解读,海边石缝里的爬虫叫什么,php 字符串长度 中文,揭阳seo网站优化,织梦网站采集规则,网页 宽屏,国内企业官网html模板lzw
MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句。 通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查
瀑布流式布局 源码,vscode直接换行快捷键,ubuntu还原源,cas不同的tomcat,爬虫病毒起源,燕十八php教程第一部,seo优化是指通过研究什么lzw
类似程序侠的源码,安卓ubuntu os,tomcat配置图片入口,新浪关注爬虫,php需要安装环境吗,沈阳seo断行者seo06lzw

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_update_clause

WHEN NOT MATCHED THEN merge_insert_clause;

1、UPDATE或INSERT子句是可选的

2、UPDATE和INSERT子句可以加WHERE子句

3、在ON条件中使用常量过滤谓词来insert所有的行到目标表中,不需要连接源表和目标表

4、UPDATE子句后面可以跟DELETE子句来去除一些不需要的行

首先创建示例表:

create table PRODUCTS

(

PRODUCT_ID INTEGER,

PRODUCT_NAME VARCHAR2(60),

CATEGORY VARCHAR2(60)

);

insert into PRODUCTS values (1501, ‘VIVITAR 35MM’, ‘ELECTRNCS’);

insert into PRODUCTS values (1502, ‘OLYMPUS IS50’, ‘ELECTRNCS’);

insert into PRODUCTS values (1600, ‘PLAY GYM’, ‘TOYS’);

insert into PRODUCTS values (1601, ‘LAMAZE’, ‘TOYS’);

insert into PRODUCTS values (1666, ‘HARRY POTTER’, ‘DVD’);

commit;

create table NEWPRODUCTS

(

PRODUCT_ID INTEGER,

PRODUCT_NAME VARCHAR2(60),

CATEGORY VARCHAR2(60)

);

insert into NEWPRODUCTS values (1502, ‘OLYMPUS CAMERA’, ‘ELECTRNCS’);

insert into NEWPRODUCTS values (1601, ‘LAMAZE’, ‘TOYS’);

insert into NEWPRODUCTS values (1666, ‘HARRY POTTER’, ‘TOYS’);

insert into NEWPRODUCTS values (1700, ‘WAIT INTERFACE’, ‘BOOKS’);

commit;


Oracle中merge用法
  • Oracle存储过程返回记录集
  • Oracle存储过程返回记录集 | Oracle存储过程返回记录集 ...

    Oracle中merge用法
  • Oracle存储过程中临时表的使用技巧
  • Oracle存储过程中临时表的使用技巧 | Oracle存储过程中临时表的使用技巧 ...

    Oracle中merge用法
  • 用脚本调用Oracle存储过程
  • 用脚本调用Oracle存储过程 | 用脚本调用Oracle存储过程 ...