`
azrael6619
  • 浏览: 580704 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

oracle中merge into..using..on..when..when..用法

阅读更多

语法:

MERGE INTO [your table-name] [rename your table here]   
  
USING ( [write your query here] )[rename your query-sql and using just like a table]   
  
ON ([conditional expression here] AND [...]...)   
  
WHEN MATHED THEN [here you can execute some update sql or something else ]   
  
WHEN NOT MATHED THEN [execute something else here ! ]  

 

实例:

merge into tfa_alarm_act_nms a   
using (select FP0,FP1,FP2,FP3,REDEFINE_SEVERITY   
from tfa_alarm_status) b   
on (a.fp0=b.fp0 and a.fp1=b.fp1 and a.fp2=b.fp2 and a.fp3=b.fp3)   
when matched then update set a.redefine_severity=b.redefine_severity   
when not matched then insert (a.fp0,a.fp1,a.fp2,a.fp3,a.org_severity,a.redefine_severity,
a.event_time  ,a.int_id)   
values (b.fp0,b.fp1,b.fp2,b.fp3,b.REDEFINE_SEVERITY,b.redefine_severity,sysdate,7777778);  

 

 

作用:利用表 tfa_alarm_status跟新表tfa_alarm_act_nms 的b.redefine_severity,条件是a.fp0=b.fp0 and a.fp1=b.fp1 and a.fp2=b.fp2 and a.fp3=b.fp3,如果tfa_alarm_act_nms表中没有该条件的数据就插入。

如果你的数据量很大,此sql效率非常高。

分享到:
评论

相关推荐

    Oracle中merge into的使用

    在Oracle数据库中,`MERGE INTO`语句是一种强大的数据操作工具,它允许你在一个步骤中执行更新(UPDATE)和插入(INSERT)操作,从而提高了数据处理的效率和灵活性。这个命令尤其适用于需要同步两个表的数据时,比如...

    浅谈Oracle数据库中Merge Into的用法.pdf

    Oracle 数据库中 Merge Into 的用法 在 Oracle 数据库中,Merge Into 语句是一种非常有用的功能,它主要用来合并 update 和 insert 语句,即用一个表中的数据来修 改或插入到另一个表中。Merge Into 语句的主要原则...

    oracle Merge 函数.doc

    MERGE INTO 目标表 USING 来源表 ON (条件) WHEN MATCHED THEN 更新操作 WHEN NOT MATCHED THEN 插入操作 ``` 其中,目标表是要更新或插入的表,来源表是提供更新或插入数据的表,条件是连接两个表的条件,更新操作...

    oracle merge into的使用

    标题:Oracle Merge Into 的使用 描述详解:Oracle Merge Into 是一个功能强大的SQL语句,它在Oracle数据库系统中被广泛用于处理数据同步、更新或插入操作。与传统的UPDATE和INSERT语句相比,Merge Into 提供了更为...

    oracle中merge into用法及实例解析

    Oracle中的`MERGE INTO`语句是一种强大的工具,用于整合数据操作,如更新、插入和删除,基于两个数据源的匹配条件。这个语句在处理数据仓库、数据同步或者复杂业务逻辑时非常有用。让我们详细了解一下`MERGE INTO`的...

    oracle merge 用法详解

    ### Oracle Merge 用法详解 #### 一、Oracle Merge 命令介绍 自Oracle 9i版本开始,Oracle数据库引入了一个非常强大的SQL语句——`MERGE`命令。通过这个命令,用户可以在一个单一的SQL语句中完成对表的插入(`...

    Oracle_merge

    本文将详细介绍 Oracle 中 `MERGE` 关键字的使用方法,并结合实际示例来解析其工作原理。 #### 二、`MERGE` 语句的基本概念 在 Oracle 9i R2 版本之前,如果需要同时进行更新和插入操作,开发人员通常需要编写两条...

    oracle使用 merge

    在Oracle数据库管理中,`MERGE`语句是一种强大的功能,它允许用户根据源表中的数据更新目标表,同时也可以向目标表中插入新的记录。这使得`MERGE`成为处理大量数据时的一个高效工具,特别是在需要同步两个数据集的...

    merge用法详解

    `MERGE`语句在Oracle数据库中是一种非常实用的DML操作,它结合了`INSERT`、`UPDATE`和`DELETE`的功能,使得在处理数据时更加高效且简洁。这个语句自Oracle 9i版本开始引入,主要用于解决在两个数据源之间进行有条件...

    Oracle MERGE INTO的用法示例介绍

    Oracle的MERGE INTO语句是一种高效且灵活的数据操纵语言(DML)操作,它结合了INSERT和UPDATE的功能,能够在单个SQL语句中处理插入新记录和更新已有记录的情况。这个特性使得数据库交互更为简洁,减少了多次查询...

    利用 sqluldr2导出数据 使用sqlldr导入数据 通过merge into 合并更新数据

    - 基本语法:`MERGE INTO 目标表 USING 来源表 ON (匹配条件) WHEN MATCHED THEN UPDATE SET 更新列 = 新值 WHEN NOT MATCHED THEN INSERT (插入列) VALUES (插入值);` - `WHEN MATCHED THEN`部分定义了当源表和...

    oracle数据匹配merge into的实例详解

    Oracle的`MERGE INTO`语句是一种强大的工具,用于根据源数据更新或插入目标表的记录。这个SQL命令结合了`INSERT`, `UPDATE`和`DELETE`操作,使得在处理数据匹配和同步时更加高效。在给定的实例中,`MERGE INTO`被...

    Oracle数据操纵数据管理.docx

    下面我们将详细讨论在Oracle中执行这些操作的方法,特别是针对"SCOTT"模式下的"EMP"表。 首先,查看SCOTT模式下的表,我们可以使用`DESCRIBE`或`SELECT * FROM`语句。例如,要查看EMP表的结构,可以运行: ```sql ...

    Merge-Sql.zip

    本文将深入探讨MERGE语句的使用,以及在不支持MERGE的数据库环境中可能采取的替代策略。 首先,让我们理解什么是MERGE语句。在SQL标准中,MERGE是一种DML(数据操纵语言)操作,它结合了INSERT、UPDATE和DELETE的...

    Oracle merge合并更新函数实例详解

    Oracle的MERGE语句是一种强大的数据操作工具,它在Oracle9i版本中被引入,用于合并UPDATE和INSERT操作。在处理需要根据特定条件更新或插入数据的场景时,MERGE语句提供了高效的解决方案,尤其适合那些需要在单个SQL...

    oracle语句整理.txt

    以上内容概括了Oracle数据库中常见的操作,包括创建表、定义函数、使用游标、异常处理、存储过程定义与执行、包定义与调用以及合并操作等。这些知识点都是Oracle数据库开发与管理的重要组成部分,掌握它们有助于更...

    oracle的update的五种方式

    Merge 更新法是 Oracle 特有的语句,语法为:`MERGE INTO table_name alias1 USING (table|view|sub_query) alias2 ON (join condition) WHEN MATCHED THEN UPDATE table_name SET ... WHEN NOT MATCHED THEN INSERT...

Global site tag (gtag.js) - Google Analytics