iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >数据库insert高级语法用法
  • 643
分享到

数据库insert高级语法用法

2024-04-02 19:04:59 643人浏览 安东尼
摘要

这篇文章主要介绍“数据库insert高级语法用法”,在日常操作中,相信很多人在数据库insert高级语法用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”数据库insert高

这篇文章主要介绍“数据库insert高级语法用法”,在日常操作中,相信很多人在数据库insert高级语法用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”数据库insert高级语法用法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

有这样一个业务需求,要求根据不同条件将源数据插入到不同的表中,源数据表更新十分频繁,这样的一个业务需求应该怎么做呢?我先给出源表结构和需要插入的表结构:
更新十分频繁的源表:
create table people(id number,name varchar2(20),sex char(3),address varchar2(500));

给源表插入数据:
insert into people 
values(1,'张翠山','男','武当山');
insert into people 
values(2,'殷素素','女','天鹰教');
insert into people 
values(3,'张无忌','男','明教');
insert into people 
values(4,'赵敏','女','皇室');
insert into people 
values(5,'周芷若','女','峨眉山');
insert into people 
values(6,'成昆','男','少林寺');
commit;
查询一下people结果,如图所示:
数据库insert高级语法用法

待插入的几张表结构:
create table people_1(id number,name varchar2(20));
create table people_2(id number,sex char(3));
create table people_3(sex char(3),address varchar2(500));
现在的业务需求是,将ID<=4的记录插入到people_1中,SEX='男'的插入到people_2,剩下的插入到people_3中。乍一看,此需求可以这样做insert into people_1 select id,name from people where id<=4; insert into people_2 select id,sex from people where SEX='男'; insert into people_3 select sex,sddress from people where id>4 and SEX!='男';但是people是一个频繁DML的表,如果分成这样子三步执行,在数据量特别大的情况下,每步插入操作会消耗较长时间,在这一段时间之内,又会有大批量数据改变,导致三步操作的表数据基数都不一样,结果当然会有偏差。因此,在这里我们用到了insert的高级语法。
sql如下:
insert all
when id<=4 then into people_1 values(id,name)
  when sex='男' then into people_2 values(id,sex)
    else into people_3 values(sex,address)
select * from people;
结果如下:
PEOPLE_1:                   PEOPLE_2:         PEOPLE_3:
数据库insert高级语法用法       数据库insert高级语法用法    数据库insert高级语法用法

如果我只想ID=1在people_1中插入之后就不在people_2中插入,那么可以使用insert first,它会从前到后进行判断,如果一条记录在前面已经插入,则在之后略过此条记录。
SQL如下:
insert first
when id<=4 then into people_1 values(id,name)
  when sex='男' then into people_2 values(id,sex)
    else into people_3 values(sex,address)
select * from people;
结果如下:
PEOPLE_1:                   PEOPLE_2:         PEOPLE_3:
数据库insert高级语法用法   数据库insert高级语法用法       数据库insert高级语法用法

当然,这个是根据条件插入的,当没有条件的时候,可以直接进行插入。
SQL如下:
insert all/first
into people_1 values(id,name)
into people_2 values(id,sex)
into people_3 values(sex,address)
select * from people;
其实很多时候,现实业务的要求oracle都为我们考虑到了,而且其性能通常强于我们自己写的PL/SQL,更多的精彩业务实现,还等着我们去探索。

到此,关于“数据库insert高级语法用法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

您可能感兴趣的文档:

--结束END--

本文标题: 数据库insert高级语法用法

本文链接: https://www.lsjlt.com/news/59597.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 数据库insert高级语法用法
    这篇文章主要介绍“数据库insert高级语法用法”,在日常操作中,相信很多人在数据库insert高级语法用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”数据库insert高...
    99+
    2022-10-18
  • SQL 数据的插入(INSERT 语句的使用方法)
    目录一、什么是 INSERT二、INSERT 语句的基本语法三、列清单的省略四、插入 NULL五、插入默认值六、从其他表中复制数据请参阅 学习重点 使用 INSERT 语句可以向表中插入数据(行)。原则上,INSERT 语句每次执行...
    99+
    2020-12-13
    SQL 数据的插入(INSERT 语句的使用方法)
  • 操作MySQL数据库的高级方法
    下文主要给大家带来操作MySQL数据库的高级方法,希望这些内容能够带给大家实际用处,这也是我编辑操作MySQL数据库的高级方法这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。1.数据备份与还原(1)...
    99+
    2022-10-18
  • 数据库语法
    修改表名:1. alter table 表名 rename to 新名;2. rename table 表名 to 新名;修改表名,还可以跨数据库。例:alter table aa rename to fo...
    99+
    2022-10-18
  • mysql中用insert语句批量插入数据的方法
    这篇文章将为大家详细讲解有关mysql中用insert语句批量插入数据的方法,文章内容质量较高,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。INSERT INTO 语句用于向表中插入新记录...
    99+
    2022-10-18
  • GaussDB高斯数据库(SQL语法入门)
    SQL语句分类: DDL数据定于语言:用于定义或修改数据库中的对象,如:表,索引,视图,数据库,序列,用户,角色,表空间,会话等。 DDL不支持物化视图,存储过程,触发器,自定义函数,自定义类型。 DML数据操作语言:用于对数据库表中的数据...
    99+
    2023-09-09
    数据库 sql mysql 1024程序员节
  • 数据库-SQL 语法
    数据库-SQL 语法       二十余年如一梦,此身虽在堪惊。   简介:数据库-SQL 语法 一、基础 模式定义了数据如何存储、存储什么样的数据以及数据如何分解等信息,数据库和表都有模式。 主键的值不允许修改,也不允许复用(不能将已经...
    99+
    2016-10-08
    数据库-SQL 语法
  • MySql数据库语句用法
    原文地址:...
    99+
    2020-02-11
    MySql数据库语句用法 数据库入门 数据库基础教程 数据库 mysql
  • 【数据库】MySQL 高级(进阶) SQL 语句
    文章目录 前提条件一、常用查询1. SELECT(显示查询)2. DISTINCT(不重复查询)3. WHERE(有条件查询)4. AND/OR(且/或)5. IN (显示已知值的字段...
    99+
    2023-09-17
    数据库 mysql sql
  • MongoDB数据库—基础语法
    一、MongoDB 数据库的特点及安装 MongoDB 数据库的特点 面向文档,模式自由 json数据模式(bson)(可以初略理解为字典) 多级引索 高可用复制集 水平扩展 跨平台、多种语言接口 弱事...
    99+
    2022-10-18
  • 有哪些C语言的高级用法
    本篇内容主要讲解“有哪些C语言的高级用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些C语言的高级用法”吧!整形溢出和提升大部分 C 程序员都以为基本的整形操作都是安全的其实不然,看下面这...
    99+
    2023-06-16
  • MySQL数据库中select语句的用法
    这篇文章主要讲解了“MySQL数据库中select语句的用法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL数据库中select语句的用法...
    99+
    2022-10-18
  • 数据库查询语句select的用法
    这篇文章将为大家详细讲解有关数据库查询语句select的用法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。数据库查询语句select用于从表中选取数据,结果被存...
    99+
    2022-10-18
  • JavaScript中高级语法??表达式用法示例详解
    目录前言具体用法。那么双问号表达式和其他的相似方法有什么不同呢?那么二者之间有什么明显的区别呢?总结前言 在JavaScript中,双问号()表达式是一种非常有用的方法。它的作用是...
    99+
    2023-05-16
    JavaScript语法??表达式 JavaScript高级语法
  • SqlServer中BULK INSERT用法简介,批量插入数据
    BULK INSERT是SqlServer中用于批量插入数据的命令。它可以将来自外部文件的数据快速加载到表中,比逐行插入数据的方式更...
    99+
    2023-09-16
    sqlserver
  • SQLServer 数据库语法有哪些呢
    SQLServer 数据库语法有哪些呢,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。--数据操作SELECT --从数据库表中检索数据...
    99+
    2022-10-19
  • 千万级数据的mysql数据库与优化方法
    本篇内容主要讲解“千万级数据的mysql数据库与优化方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“千万级数据的mysql数据库与优化方法”吧!1.对查询进行...
    99+
    2022-10-18
  • MySQL Select 查询语句详解及高级用法
    MySQL是一个开源的关系型数据库管理系统,支持多种操作语言,其中最基础、最常用的命令之一就是SELECT语句。在本篇文章中,这里将详细介绍MySQL SELECT语句的各个方面,从最基本的查询语句,到更高级的技巧和功能。 一、基本...
    99+
    2023-10-01
    mysql 数据库 sql
  • 数组reduce高级用法有哪些
    本篇内容介绍了“数组reduce高级用法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!背景reduc...
    99+
    2022-10-19
  • Android中数据库升级onUpgrade方法说明
      Andoird的SQLiteOpenHelper类中有一个onUpgrade方法。帮助文档中只是说当数据库升级时该方法被触发。经过实践,解决了我一连串的疑问:   1...
    99+
    2022-06-06
    数据 数据库 Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作