oracle数据库中insert,【Oracle】sql插入之 insert all、insert first
Oracle插入之 insert all、insert first介绍
利用insert first/all使得INSERT语句可以同时插入多张表,还可以根据判断条件来决定每条记录插入到哪张或哪几张表中。
insert first:对于每一行数据,只插入到第一个when条件成立的表,不继续检查其他条件。
insert all:对于每一行数据,对每一个when条件都进行检查,如果满足条件就执行插入操作。create table edw_int (
agmt_no varchar2(40 byte) not null,
agmt_sub_no varchar2(4 byte) not null,
need_repay_int number(22,2),
curr_period number(4) not null
);
create table edw_int_1 (
agmt_no varchar2(40 byte) not null,
agmt_sub_no varchar2(4 byte) not null,
need_repay_int number(22,2),
curr_period number(4) not null
);
create table edw_int_2 (
agmt_no varchar2(40 byte) not null,
agmt_sub_no varchar2(4 byte) not null,
need_repay_int number(22,2),
curr_period number(4) not null
);
-- 插入数据
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20003874', '2104', 3126.5, 7);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20003874', '2104', 3290.76, 6);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20003874', '2104', 3454.06, 5);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20003874', '2104', 3616.41, 4);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20017143', '2104', 2350.86, 0);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20017143', '2104', 3566.55, 0);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20018273', '2104', 1639.46, 0);
insert into edw_int (agmt_no, agmt_sub_no, need_repay_int, curr_period) values ('20018273', '2104', 2080.49, 0);
COMMIT;
insert all示例insert all
into edw_int_1 (agmt_no, agmt_sub_no, need_repay_int, curr_period) values (agmt_no, agmt_sub_no, need_repay_int, curr_period)
into edw_int_2 (agmt_no, agmt_sub_no, curr_period) values (agmt_no, '1234', curr_period)
select agmt_no, agmt_sub_no, need_repay_int, curr_period from edw_int;
commit;
删除完数据继续测试 加上条件when then else
truncate table edw_int_1;
truncate table edw_int_2;insert all
when curr_period = 0 then
into edw_int_1 (agmt_no, agmt_sub_no, need_repay_int, curr_period) values (agmt_no, agmt_sub_no, need_repay_int, curr_period)
else
into edw_int_2 (agmt_no, agmt_sub_no, need_repay_int, curr_period) values (agmt_no, agmt_sub_no, need_repay_int, curr_period)
select agmt_no, agmt_sub_no, need_repay_int, curr_period from edw_int;
commit;
删除数据
测试insert firstinsert first
when curr_period = 0 then
into edw_int_1 (agmt_no, agmt_sub_no, need_repay_int, curr_period) values (agmt_no, agmt_sub_no, need_repay_int, curr_period)
when agmt_sub_no = '2104' then
into edw_int_2 (agmt_no, agmt_sub_no, need_repay_int, curr_period) values (agmt_no, agmt_sub_no, need_repay_int, curr_period)
select agmt_no, agmt_sub_no, need_repay_int, curr_period from edw_int;
commit;
oracle数据库中insert,【Oracle】sql插入之 insert all、insert first相关推荐
- navicat导出数据到oracle,使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中...
使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中 发布时间:2018-08-20 14:41, 浏览次数:471 , 标签: Navicat pre ...
- oracle数据库中nvarchar,Oracle数据库中的varchar,varchar2,nvarchar,nvarchar2区别及用
[varchar,varchar2 ] 联系: 1. varchar/varchar2用于存储可变长度的字符串 比如 varchar(20),存入字符串'abc', 则数据库中该字段只占3个字节,而不 ...
- Java 对Oracle数据库中的 BLOB类型 插入图片
2019独角兽企业重金招聘Python工程师标准>>> package test;import java.io.BufferedInputStream; import java.io ...
- oracle数据库sql查询,oracle数据库中常用经典SQL查询
2010-06-03 14:25:15 来自 --1.查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_ ...
- oracle 数据库中拆分,oracle数据库字符串拆分
第一种 直接返回切分的字符串 create or replace function Get_StrArrayLength ( av_str varchar2,--要分割的字符串 av_split va ...
- oracle查询记录插入,我应该使用哪种查询语法在Oracle数据库中插入记录?
我是一个初学者,试图用C#创建一个简单的程序来插入和更新Oracle数据库中的记录.我已经成功地连接到数据库,但是我的SQL语句出现异常,该异常指出不支持(?)符号.为什么会出现此异常,该如何解决? ...
- oracle数据库插入多表,在Oracle数据库中插入嵌套表
我是PL/SQL数据库的新学习者,这是一种给apex.oracle.com上的数据库应用指定序列的练习.然后我创建了表格,但是当填充与插入的代码如下所示,应用赋予错误,表你不介意,我需要你的帮助在Or ...
- oracle加入生僻字,ORACLE数据库中如何插入生僻字
ORACLE数据库中如何插入生僻字 发布时间:2020-08-16 23:44:09 来源:ITPUB博客 阅读:184 作者:巡完南山巡南山 本文转自oracle官方博客, 很多客户的数据库的字符集 ...
- 在oracle符号,学在oracle数据库中插入特殊符号
oracle 特殊字符的插入 环境配置: server:9 db server: oracle817.4 client os:windows2000 pro oracle client: oracle ...
- Oracle数据库中SQL语句用法(一)
Copyright © 2019 @Linyer. All Rights Reserved 下接Oracle数据库中SQL语句用法(二)[点击以查看] 目录 第1章:编写基本的SQL SELECT语句 ...
最新文章
- SpringBoot实现万能文件在线预览,已开源,真香!!!
- Linux(CentOS)安装分区方案
- iOS UITest之加载其他应用
- 2016-1-29 图解HTTP(04)
- mysql导入多条数据语句_MySQL插入多条记录和REPLACE语句
- 一支笔卖70万,为的是能打开笔,复杂的像辆车,英国女王都用它
- python列表是顺序表还是链表_顺序表与链表
- NSJSONSerialization介绍
- 中文在线语音识别技术获重大突破!百度输入法准确率超行业最高水平15%
- Spring IoC-02
- css srcset,研究一下响应式图片加载属性srcset和sizes_html/css_WEB-ITnose
- php laravel 面试,当面试关问你Laravel Facade,说出这几个关键词就可以
- 大数据平台_大数据应用场景有哪些
- 简单的静态网页(宠物网)
- 让所有版本的IE卡死的HTML代码
- Hacking EV3系列之七:iPhone 手势无线控制LEGO EV3 Gyro Boy 机器人
- Flow-Guided-Feature-Aggregation-的安装配置,demo运行,以及采用少量ILSVRC2015 VID数据集在其中训练
- python文件和数据格式化思维导图,思维导图:Numpy+Pandas
- C++一本通1086(角谷猜想)
- 新的起点,梦的启航!我为什么要写这个博客
热门文章
- 力扣算法题—045跳跃游戏二
- 订单系统开发(仿淘宝和美团网) 之 项目总结(降低数据库并发量)
- 时间序列数据和MongoDB:第三部分 - 查询,分析和呈现时间序列数据
- BCH社区为比特币现金的发展买单
- Linux设备驱动Hello World程序介绍
- codeforces Gargari and Permutations(DAG+BFS)
- Struts2 格式化输出时间
- 公开仓库中Docker镜像的漏洞分析结果发布
- [译]使用scikit-learn进行机器学习的简介(教程1)
- 轻松使用OpenCV Python控制Webcam,读取Barcode