当前位置: 首页 > news >正文

oracle插入多表(insert all/first)

1、建测试表

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
);

2、插入测试数据

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;

3、insert all/first语句示例

(1)、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;

(2)、insert all-带条件

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;

(3)、insert first-带条件

insert 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;

4、数据结果查看

truncate table edw_int_1;
truncate table edw_int_2;
select * from edw_int;
select * from edw_int_1;
select * from edw_int_2;

5、all与first的区别

all:不考虑先后关系,只要满足条件,就全部插入;

first:考虑先后关系,如果有数据满足第一个when条件又满足第二个when条件,则执行第一个then插入语句,第二个then就不插入第一个then已经插入过的数据了。

其区别也可描述为,all只要满足条件,可能会作重复插入;first首先要满足条件,然后筛选,不做重复插入。

6、利用insert all实现行列转换(insert all的旋转功能)

1、建一行多列表及测试数据插入
create table week_bal(id int,w1_bal number,w2_bal number,w3_bal number,w4_bal number,w5_bal number);
insert into week_bal values(1,10.09,12.98,23.89,89.08,1098.01);
commit;
select * from week_bal;
2、建少列多行表
create table week_bal_new(id int,week int,bal number);
3、利用insert all语句插入
insert all
into week_bal_new(id,week,bal)values(id,1,w1_bal)
into week_bal_new(id,week,bal)values(id,2,w2_bal)
into week_bal_new(id,week,bal)values(id,3,w3_bal)
into week_bal_new(id,week,bal)values(id,4,w4_bal)
into week_bal_new(id,week,bal)values(id,5,w5_bal)
select id,w1_bal,w2_bal,w3_bal,w4_bal,w5_bal from week_bal;
select * from week_bal_new;

相关文章:

oracle插入多表(insert all/first)

1、建测试表 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 (…...

工业以太网交换机-SCALANCE X200 环网组态

1.概述 SCALANCE X200 系列交换机自从2004年8月推入市场,当时交换机只能接入环网,不能做环网管理器。在各个工业现场得到了广泛的应用。2007年5月发布了X200系列新的硬件版本平台,普通交换机可以用HSR(高速冗余)方法做…...

利用 Splashtop Enterprise 改善公司的网络安全

在我们日益数字化的世界中,对强有力的网络安全措施的需求从未像现在这样迫切。随着组织扩大其数字足迹并采用远程办公解决方案,他们面临着一系列不断变化的挑战。 威胁行为者不断寻找利用漏洞的新方法,这使得企业保持领先地位至关重要。俗话…...

mqbroker.cmd闪退(mqnamesrv.cmd能正常启动)

解决: 用户目录下面store文件(如:C:\Users\Administrator\store或C:\Users\你的用户名\store),删除文件里面所有文件,再次启动即可。...

LeetCode--HOT100题(26)

目录 题目描述:142. 环形链表 II(中等)题目接口解题思路代码 PS: 题目描述:142. 环形链表 II(中等) 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返…...

HTTP 请求方法详解

HTTP 请求方法详解 请求方法 请求方法(Request Methods)是在 HTTP 请求中用于指定对目标资源执行的操作类型。每个请求都需要指定一个请求方法,以告知服务器要执行的操作。 以下是一些常见的 HTTP 请求方法及其主要用途: GET&…...

孤立随机森林(Isolation Forest)(Python实现)

目录 1 简介 2 孤立随机森林算法 2.1 算法概述 2.2 原理介绍 2.3 算法步骤 3 参数讲解 4 Python代码实现 5 结果 1 简介 孤立森林(isolation Forest)是一种高效的异常检测算法,它和随机森林类似,但每次选择划分属性和划…...

小程序如何自定义分享内容

小程序项目中遇到门票转增功能&#xff0c;用户可将自己购买的门票分享给好友&#xff0c;好友成功领取即得门票一张 1.自定义分享按钮 通过button里的open-type属性里的share参数即自可定义分享按钮 <button open-type"share">分享</button>2.配置分…...

SpringBoot整合WebSocket详解

环境&#xff1a;Springboot3.0.5 WebSocket介绍 WebSocket协议RFC 6455提供了一种标准化的方式&#xff0c;通过一个TCP连接在客户端和服务器之间建立全双工、双向的通信通道。它是一个不同于HTTP的TCP协议&#xff0c;但设计为在HTTP之上工作&#xff0c;使用80和443端口&am…...

伪原创神码ai怎么样【php源码】

这篇文章主要介绍了python汉化补丁包下载&#xff0c;具有一定借鉴价值&#xff0c;需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获&#xff0c;下面让小编带着大家一起了解一下。 火车头采集ai伪原创插件截图&#xff1a; ** Spyder汉化&#xff08;python汉化&…...

Air001基于Keil环境开发,使用airisp串口命令行烧录

Air001基于Keil环境开发&#xff0c;使用airisp串口命令行烧录 有人会有这样的疑惑&#xff0c;使用Keil平台开发&#xff0c;为什么不直接使用CMSIS-DAP直接烧录&#xff0c;还要使用串口方式来去单独烧录&#xff0c;不是我不想&#xff0c;目前使用合宙官方的Air103芯片版本…...

kubernetes 中的事件(event)简介以及如何收集event和基于event告警

引用另外一篇文章对k8s event的介绍 1.什么是kubernetes事件 Kubernetes Events 是一种 Kubernetes 资源对象&#xff0c;记录了某个组件在某个时间做了某个动作&#xff0c;用于展示集群内发生的情况&#xff0c;当 Kubernetes 集群中资源状态发生变化时&#xff0c;可以产生…...

C++小游戏贪吃蛇源码

graphics.h是针对DOS下的一个C语言图形库 (c也可以) 目前支持下载此头文件的常用的有两种: 1. EGE (Easy Graphics Engine)2. EasyX Graphics LibraryEGE, 全名Easy Graphics Engine, 是windows下的简易绘图库&#xff0c;是一个类似BGI(graphics.h)的面向C/C语言新手的图形库…...

【密码学】穴居人密码

穴居人密码 文字记载中&#xff0c;有时会把来自古希腊文化之前的各种记录作为密码学的例子&#xff0c;但称它们为密码学一定太不严格了&#xff0c;这是因为那些方法都太原始了。密码学的起源能追溯到多早&#xff0c;取决于你把密码学的相关定义确定得有多宽泛。大多数作者都…...

neo4j的CQL命令实例演示

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…...

vue3+ts使用antv/x6

使用 2.x 版本 x6.antv 新官网: 安装 npm install antv/x6 //"antv/x6": "^2.1.6",项目结构 1、初始化画布 index.vue <template><div id"container"></div> </template><script setup langts> import { onM…...

wsl1 ubuntu通过宿主机代理连接外网

文章目录 环境变量配置apt换源apt安装&#xff0c;测试是否能通外网可能出现的问题&#xff1a;Temporary failure resolving 参考 背景&#xff1a;公司电脑是局域网&#xff0c;通过走代理来连接外网 wsl1 ubuntu想要通过来连接宿主机的局域网代理&#xff0c;访问外网 可以…...

ubuntu20.04 opencv4.2 安装笔记

参考&#xff1a; https://docs.opencv.org/4.x/d7/d9f/tutorial_linux_install.html Build with opencv_contrib # 1. Install minimal prerequisites&#xff0c; libgtk2.0-dev pkg-config 用来显示图像 sudo apt update && sudo apt install -y cmake g wget un…...

ubuntu安装nginx以及php的部署

目录 1.安装依赖包 2.安装nginx 3.编译nginx 4.启动nginx 5.访问nginx 6.增加源地址 7.安装php 8.配置php-fpm 9.修改权限 10.配置nginx里的php 11.启动php-fpm 12.配置php文件以及权限 13.登陆查看 1.安装依赖包 apt-get install gcc apt-get install libpcre3 l…...

IntelliJ IDEA 2021/2022关闭双击shift全局搜索

我这里演示的是修改&#xff0c;删除是右键的时候选择Remove就好了 IDEA左上角 File-->Settings 找到Navigate -->Search Everywhere &#xff0c;右键添加快捷键。 OK --> Apply应用...

终极指南:UABEAvalonia - 跨平台Unity资源编辑器完全解析

终极指南&#xff1a;UABEAvalonia - 跨平台Unity资源编辑器完全解析 【免费下载链接】UABEA c# uabe for newer versions of unity 项目地址: https://gitcode.com/gh_mirrors/ua/UABEA UABEAvalonia是一款功能强大的跨平台Unity资源编辑器&#xff0c;专为游戏开发者和…...

u-blox MAYA-W4三模物联网模块技术解析与应用

1. u-blox MAYA-W4三模物联网模块深度解析在工业物联网和智能家居领域&#xff0c;无线连接模块的性能和可靠性直接决定了终端设备的用户体验。去年我们评测的u-blox MAYA-W3模块采用了Infineon的三频段独立芯片方案&#xff0c;而今年新推出的MAYA-W4系列则带来了更具突破性的…...

ART框架:基于强化学习的大语言模型智能体训练实战指南

1. 项目概述&#xff1a;ART&#xff0c;一个让智能体“在工作中学习”的框架如果你正在构建基于大语言模型的智能体&#xff0c;并且对它们“一本正经地胡说八道”、在复杂任务中容易“迷路”或者工具调用不准感到头疼&#xff0c;那么你很可能已经意识到&#xff0c;仅仅依靠…...

终极指南:如何快速实现Consul与CA集成——证书颁发机构与TLS证书管理核心技术解析

终极指南&#xff1a;如何快速实现Consul与CA集成——证书颁发机构与TLS证书管理核心技术解析 【免费下载链接】consul Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infra…...

VisualCppRedist AIO:Windows运行库智能修复实战指南

VisualCppRedist AIO&#xff1a;Windows运行库智能修复实战指南 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist VisualCppRedist AIO是一款面向Windows系统的全…...

硅基演化与碳基锚定——OpenClaw的反熵共同体、协议霸权与后人类纪元的文明契约(第十篇)

硅基演化与碳基锚定——OpenClaw的反熵共同体、协议霸权与后人类纪元的文明契约&#xff08;第十篇&#xff09;摘要历经前九篇从代码骨架、生态血肉、经济血脉、安全悖论直至认知内爆与热力学坍缩的层层剥洋葱式解构&#xff0c;我们已将 OpenClaw 从一款风靡全球的“开源龙虾…...

AI智能体文件感知规划:让AI在行动前先读懂你的文件

1. 项目概述&#xff1a;当AI规划器学会“读文件”最近在折腾AI智能体&#xff08;Agent&#xff09;和自动化工作流&#xff0c;我发现一个挺有意思的痛点&#xff1a;很多规划任务&#xff0c;比如写周报、整理会议纪要、分析数据&#xff0c;其实都离不开对现有文件的处理。…...

C语言命令行参数的使用

### C语言中命令行参数的用法与示例在C语言中&#xff0c;main函数可以通过两个参数来接收命令行参数&#xff1a;int argc 和 char *argv。其中&#xff0c;argc表示命令行参数的数量&#xff08;包括程序名本身&#xff09;&#xff0c;而argv是一个字符串数组&#xff0c;存…...

EdgeChains:基于Java响应式编程构建生产级大语言模型应用框架

1. 项目概述&#xff1a;当大模型需要“记忆”与“逻辑”如果你最近在折腾大语言模型&#xff08;LLM&#xff09;的应用&#xff0c;比如想做个智能客服、文档问答或者知识库助手&#xff0c;大概率会遇到一个核心瓶颈&#xff1a;LLM本身是个“健忘症患者”&#xff0c;它无法…...

你的数字相册里藏着多少“双胞胎“图片?这个免费工具能帮你一键清理

你的数字相册里藏着多少"双胞胎"图片&#xff1f;这个免费工具能帮你一键清理 【免费下载链接】AntiDupl A program to search similar and defect pictures on the disk 项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl 你是否曾经在整理照片时&#…...