`

oracle同表更新插入

阅读更多

1:merge指令  

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;

 

MERGE INTO table_name alias1 
USING (
table|view|sub_query) alias2
ON (join condition) 
WHEN MATCHED THEN 
    
UPDATE table_name 
    
SET col1 = col_val1, 
        col2     
= col2_val 

       WHERE CONDITIONS

      [DELETE WHERE (CONTIONS)]
WHEN NOT MATCHED THEN 
    
INSERT (column_list) VALUES (column_values);

 

注意事项:

1

MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句。

Oracle 10g中的MERGE提供了在执行数据操作时清除行的选项.

2UPDATE子句后面可以跟DELETE子句来去除一些不需要的行 
delete只能和update配合,从而达到删除满足where条件的子句的纪录

3:

严格意义上讲,”在一个同时存在Insert和Update语法的Merge语句中,总共Insert/Update的记录数,就是Using语句中alias2的记录数。”

分享到:
评论

相关推荐

    向Oracle数据库插入Clob大段文本解决方法

    总之,向Oracle数据库插入或更新Clob大段文本是一个涉及SQL语句构建、参数类型设置及值赋值等多个方面的过程。正确理解和掌握这些细节,能够帮助开发者更高效、安全地管理数据库中的大量文本数据。

    java代码oracle数据库批量插入

    ### Java代码实现Oracle数据库批量插入的关键知识点 #### 1. JDBC连接配置 - **JDBC URL**: `jdbc:oracle:thin:@IP:1521:orcl`,这里的URL指定了连接到Oracle数据库的方式。其中`@IP:1521:orcl`中的IP是指数据库...

    ORACLE数据库中插入大字段数据的解决方法

    当插入或更新包含大字段的数据时,ORACLE会采用不同的策略以优化存储和性能。 1. **LOB存储模式**: - **临时LOB**:数据存放在内存中,直到事务结束才写入磁盘,适合短时操作。 - **缓存LOB**:数据存储在数据库...

    oracle 批量插入数据存储过程

    oracle 批量插入数据存储过程。亲测好用。支持 plsql ,toad,等数据库分析软件。主要包括变量的定义,循环及游标的使用等, 亲测好用

    oracle 批量插入存储过程

    oracle 批量插入存储过程,性能非常高!

    oracle批量插入数据脚本

    oracle批量生成数据脚本,oracle批量生成数据脚本,oracle批量生成数据脚本,oracle批量生成数据脚本。

    oracle向数据库里插入图片

    在Oracle数据库中插入图片涉及到BLOB(Binary Large Object)数据类型,这是Oracle用来存储大量二进制数据,如图片、音频或视频文件等的一种方式。本文将详细介绍如何在Oracle数据库中插入、查询和管理图片。 首先...

    OraExcel excel连接oracle插件 批量插入

    它允许用户直接在Excel环境中执行对Oracle数据库的操作,如查询、更新、删除和插入数据,而无需编写复杂的SQL语句或借助其他数据库管理软件。这种直观的方式极大地提高了工作效率,特别是对于需要频繁进行数据导入...

    C# Oracle批量插入数据进度条的实现代码

    由于项目需求,需要将Excel中的数据进过一定转换导入仅Oracle数据库中。考虑到当Excel数据量较大时,循环Insert语句效率太低,故采用批量插入的方法。在插入操作运行时,会造成系统短暂的“卡死”现象。为了让用户...

    Oracle Linux更新Yum源

    "Oracle Linux更新Yum源详解" Oracle Linux 是一个基于 Red Hat Enterprise Linux 源代码的操作系统,具有高性能、可靠性和安全性。Yum(Yellow dog Updater, Modified)是一个命令行的包管理器,用于管理 RPM ...

    高效批量插入和更新

    C#批量插入,更新ORACLE 保存100万条数据大概3-5秒 保存或者更新100万条数据大概20秒 DataTable保存100万条数据大概1-2分钟 可能因环境原因时间有差异,不过可以看出性能还是很大提升的

    oracle SQL 语句插入数据

    在Oracle中,插入数据到表中的主要语句是`INSERT INTO`,它允许你将新记录添加到已存在的表中。下面我们将深入探讨Oracle SQL语句插入数据的相关知识点。 一、基本语法 Oracle SQL 插入数据的基本语法如下: ```...

    oracle ODP.NET 批量插入或更新

    ### Oracle ODP.NET 批量插入或更新技术详解 #### 一、背景介绍 在数据库操作中,批量处理数据是一项非常重要的技术。特别是在处理大量数据时,如何高效地执行批量插入或更新操作对于提高应用程序性能至关重要。...

    Java实现mybatis批量插入数据到Oracle

    本篇文章将详细介绍如何利用Java和MyBatis实现批量插入数据到Oracle数据库中。 首先,我们需要理解Oracle数据库的一些基本概念。Oracle是世界上最流行的商业关系型数据库管理系统之一,以其强大的功能和高可靠性而...

    oracle oci 批量插入源代码

    3. **批量插入**:在Oracle OCI中,批量插入通常涉及使用oci_bind_array_by_name函数将一组数据绑定到同一个SQL插入语句中的多个占位符。这组数据可以是二维数组或其他合适的数据结构。执行oci_execute时,数据库一...

    oracle中insert, 插入批量插入及union

    oracle中insert, 插入批量插入及union

    oracle循环插入

    oracle循环插入oracle循环插入oracle循环插入oracle循环插入oracle循环插入oracle循环插入oracle循环插入oracle循环插入

    oracle使用 merge 更新或插入数据(总结)

    oracle使用 merge 更新或插入数据(总结)

    Oracle中多表关联批量插入批量更新与批量删除操作

    在Oracle数据库中,进行多表关联的批量插入、批量更新和批量删除操作是常见的数据库管理任务,尤其是在处理大量数据时,这些操作能显著提高效率并减少资源消耗。本文将详细探讨这三个方面,并通过实例代码来展示如何...

Global site tag (gtag.js) - Google Analytics