`

Oracle 带条件插入/更新

阅读更多

我们有时需要对一个表进行更新操作,当某条记录不存在的时候进行插入操作,存在的时候更新纪录。通常我们使用if(exists(select ....)update....else insert,这样进行两遍表扫描,效率很低,在Oracle 9i以上有一个关键字merge,我们使用它就可以了。merge into 需要两个标操作,我们利用dual
merge into referer_stat L using  (select '1' from dual) N on (L.webid=234) WHEN MATCHED THEN UPDATE set count = count +1 WHEN NOT MATCHED THEN  INSERT (webid)values(234) ;

当表referer_stat中存在id=234记录时更新,不存在时插入纪录

<script type="text/javascript"></script>

分享到:
评论

相关推荐

    oracle ODP.NET 批量插入或更新

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

    /* append*/ oracle append 知识点

    `/*append*/` 是Oracle数据库中一种高效的插入模式,适用于需要高速插入大量数据的场景。通过减少日志和undo数据的生成,以及避免表空间的广泛搜索,提高了插入操作的效率。然而,使用 `/*append*/` 也需谨慎考虑其...

    oracle sql and pl/sql

    - 数据操纵(Data Manipulation):插入、更新、删除数据。 - 数据查询(Data Query):通过 SELECT 语句查询数据。 - 数据控制(Data Control):管理用户权限和安全设置。 3. **特点**: - 强大的查询能力:...

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

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

    Basic Oracle Security and PL / SQL

    Oracle的PL/SQL是Oracle数据库中的过程式编程语言,它结合了SQL的查询能力与程序设计的灵活性。在Oracle安全性的基础中,了解PL/SQL是至关重要的,因为许多数据库操作和业务逻辑都是通过PL/SQL来实现的,这直接关系...

    oracle oci 批量插入源代码

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

    Oracle Pro *C/C++ 和OCI 最详细的教程

    Oracle Pro*C/C++和OCI是两种用于开发与Oracle数据库交互的程序的技术。Oracle Pro*C/C++是一种将SQL语句嵌入到C或C++语言中的预编译器技术,而OCI(Oracle Call Interface)是一个提供接口让开发人员能使用C语言...

    Oracle 10g PL/SQL Programming

    8. **PL/SQL与SQL的集成**:可以直接在PL/SQL块中嵌入SQL语句,实现数据的查询、插入、更新和删除操作。 9. **PL/SQL块的执行方式**:有匿名块(直接在SQL*Plus或其他工具中执行)和命名块(如存储过程、函数、...

    实用Oracle SQL&PLSQL PPT

    Oracle SQL是一种结构化查询语言,用于检索、更新、插入和删除Oracle数据库中的数据,而PL/SQL(Procedural Language/Structured Query Language)是Oracle数据库特有的过程式编程语言,它扩展了SQL的功能,使得能够...

    oracle pl/sql从入门到精通 配套源代码

    触发器可以用于实现复杂的业务规则,如在插入、更新或删除数据时进行检查或自动更新其他字段。 4. **包**:包是组织相关过程和函数的容器,提供了一个模块化的编程环境,可以隐藏实现细节,只暴露公共接口。 5. **...

    Oracle数据库SQL和PL/SQL实例教程

    2. **数据操作语言(DML)**:用于插入、更新和删除数据行。DML语句如INSERT、UPDATE、DELETE和SELECT是日常数据库操作的基础。 3. **查询语句**:SELECT语句是最常用的SQL命令,用于从数据库中检索数据。高级查询...

    Oracle PL/SQL程序设计(第5版)(上下册)

    - **SQL语句的执行**:介绍如何在PL/SQL代码中嵌入SQL语句,包括查询、插入、更新和删除操作。 - **动态SQL**:探讨如何构造和执行动态SQL语句,这对于需要根据运行时条件生成SQL的情况非常有用。 - **SQL*Plus命令*...

    关于ORACLE面试题

    当需要插入数据时,系统会根据需要分配新的数据块或区段给相应的段。 #### 5. 数据字典视图 数据字典视图提供了关于数据库对象的元数据信息,如表、索引等。常用的视图包括: - `DESCRIBE`命令:用于查看表的结构...

    java连接oracle数据库完成查询,插入,删除,更新等操作,采用contoller,service,DAO三层结构,实现了分页等操作的web工程

    此web工程实现了连接oracle数据库完成基本功能:查询,插入,删除,更新。连接的数据库为员工信息管理系统,采用Contrller,Service,Dao三层结构,controller层为servlet,下层均有一个接口和一个实现类。Bean的基本...

    oracle数据库 sql 和pl/sql实例教程

    1. **SQL基础**:包括数据查询、数据插入、更新和删除(DML语句),以及数据库对象的创建和管理(DDL语句)。例如,如何使用SELECT语句进行复杂的数据检索,如何使用INSERT、UPDATE和DELETE操作对数据进行增删改,...

    Oracle查询处理in条件超过1000条

    Oracle查询处理in条件超过1000条的2种后台处理方式:A,后台拼接查询条件;B,每1000条查询一次,最后返回查询结果;

    oracle pl/sql实例精讲student数据库模式数据和表脚本

    执行部分是实际执行的代码,包括对数据库的查询、更新和插入操作;异常处理部分用于捕获并处理可能出现的错误。 在"student"数据库模式中,我们可能会用到以下PL/SQL语法: 1. **DDL(Data Definition Language)*...

    精通Oracle.10g.PLSQL编程

    访问Oracle 6.1 检索单行数据 6.2 操纵数据 6.2.1 插入数据 6.2.2 更新数据 6.2.3 删除数据 6.2.4 SQL游标 6.3 事务控制语句 6.4 习题 第7章 编写控制结构 7.1 条件分支...

    最全的oracle常用命令大全.txt

    带初始化参数文件的启动方式 先读取参数文件,再按参数文件中的设置启动数据库 例:startup pfile=E:Oracleadminoradbpfileinit.ora 8、startup EXCLUSIVE 二、用户如何有效地利用数据字典 ORACLE的数据字典是...

Global site tag (gtag.js) - Google Analytics