扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:builder.com.cn 2007年4月11日
关键字: 数据仓库 ORACLE Oracle 10g MERGE Bob Watkins
在本页阅读全文(共2页)
在Oracle 9i R2版中引入的MERGE语句通常被称作“更新插入”(upsert),因为使用MERGE可以在同一个步骤中更新(update)并插入(insert)数据行,对于抽取、转换和载入类型的应用软件可以节省大量宝贵的时间,比如向数据仓库中加载数据,数据仓库中没有的数据行可以插入到数据仓库中,而已经存在的数据行也同时被更新。
在MERGE语句引入的时候,需要同时使用一条UPDATE和一条INSERT语句,顺序也是固定的(先使用UPDATE语句,然后是INSERT语句)。如果您只需要使用其中的某一条一句,您只需要使用现有的INSERT或者UPDATE语句,而不必使用MERGE语句,而删除数据可以使用DELETE语句。
在Oracle
列表A创建了一个表格列出现有项目:项目号码、标题、开始日期、进度完成比例以及员工对项目的响应,还创建了一个事务表格使用MERGE语句进行升级批处理。
DROP TABLE open_projects;
DROP TABLE project_updates;
CREATE TABLE open_projects
(pno NUMBER(6) PRIMARY KEY,
title VARCHAR2(40),
startdate DATE,
pctdone NUMBER(3),
empno NUMBER(6)
);
INSERT INTO open_projects VALUES
(10, 'Inventory servers', '08-JAN-07',0, 206);
INSERT INTO open_projects VALUES
(20, 'Upgrade Oracle on SRV01','15-JAN-07', 0, 206);
INSERT INTO open_projects VALUES
(30, 'Conduct skills assessment','22-JAN-07', 0, 210);
CREATE TABLE project_updates
(action CHAR(1),
pno NUMBER(6),
pctdone NUMBER(3),
empno NUMBER(6)
);
INSERT INTO project_updates VALUES
('C', 10, 50, 214);
INSERT INTO project_updates VALUES
('D', 20, NULL, NULL);
COMMIT;
列表A
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者