`
crabdave
  • 浏览: 1295525 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

批量更新某一查询结果集的第N条到第M条的记录的SQL(DB2)

阅读更多

问题:在项目开发中,我们有时候需要根据一些限制条件查询出一个结果集后,再将这个结果集的比如前10行进行某一update操作,后10行再进行另一个update操作。

解决方案:
1)根据限制条件查询出结果集(该结果集应该以其主键进行排序),在该结果集上给各行记录进行编号。
2)根据各行记录的编号取出一次取出前10行的记录或后10行的记录。
3)进行各自的update操作。

参考实现:
以下将以我在项目中多次用到的SQL为例。
代码如下:
update tableName b
set b.A=2 ,b.B=current date  --B字段为日期类型
where exists (
   select 1 from (
      select a.id,row_number()over(order by a.id) req --以tableName表的主键id字段进行排序
         from tableName a where a.C =22 and a.D=1) c --加上查询结果集的限制条件
  where b.id=c.id and c.req>=1 and c.req<=3);--将要更新查询结果集的第1到第3条记录

分享到:
评论

相关推荐

    SQL查找某记录的前后N条数据

    SQL查找某记录的前后N条数据 SQL查找某记录的前后N条记录

    SQL 取n到m条记录

    例如,当我们想要显示第n条到第m条记录时,就需要用到特定的SQL语句来实现这一功能。以下将详细介绍几种常见的方法及其应用场景。 #### 二、使用`NOT IN`排除前n条记录 **方法一:** 使用`SELECT TOP m * FROM ...

    DB2数据库批量导insert工具

    DB2数据库批量导insert工具是为了解决在某些DB2客户端中无法便捷地批量生成insert语句以备份数据的问题而设计的。这个工具允许用户高效地导出DB2数据库中的insert语句,使得数据备份过程更为简单且经过了大规模的...

    db2数据库sql语句大全

    这条命令与第2条类似,但这里没有使用`online`参数,因此这将是一个脱机备份,这意味着在备份过程中数据库将不可用。 #### 4. 创建表 ```sql createtable( "column1" integer not null, "column2" varchar(30) ); `...

    DB2的SQL1032N

    在DB2连接时,客户端出现 SQL1032N的错误有可能是DB2的认证信息过期了,或者启动DB2启动不了、列出db2 list active database等等,有报错包里面有错误的解释、操作的文件和把DB2修改成永久的的文件

    用一条SQL语句将数据表中某列更新到另一个数据表里

    ### 使用单条SQL语句更新数据表中的某一列至另一表 #### 背景介绍 在数据库管理中,经常需要对数据进行更新操作来确保数据的准确性和时效性。有时候,这种更新不仅限于同一张表内,还可能涉及到跨表的操作。例如,...

    DB2 SQL性能调优秘笈

    2. **SQL Trace记录**:通过对关键SQL语句进行跟踪记录,可以收集到详尽的性能数据,进而深入分析执行效率低下的原因。 3. **SQL Monitor监控**:利用DB2的SQL Monitor功能,可以实时监控SQL语句的执行情况,及时...

    db2查看sql执行计划

    在DB2中,当执行一个SQL查询时,数据库引擎会根据表结构、索引信息等因素生成一个执行计划,该计划定义了如何高效地执行查询语句。通过查看执行计划,可以了解到查询的具体执行流程,从而帮助分析查询性能并进行优化...

    DB2 日期数据库的sql语句

    ### DB2数据库中获取当前日期与时间的相关SQL语句 在DB2数据库系统中,处理日期和时间数据是一项常见的需求。对于开发人员来说,能够准确地获取和操作日期时间数据至关重要。本文将详细介绍如何在DB2数据库中使用...

    DB2中几种遇到的SQL1032N出错的解决

    DB2中几种遇到的SQL1032N出错的解决

    IBM DB2数据库——SQL入门

    通过上述内容的分析,可以看出该文档涵盖了从SQL语言基础到高级查询等多个方面的知识,对于初学者来说是一份非常全面的学习资料。掌握了这些基础知识后,用户将能够更好地管理和操作IBM DB2数据库中的数据。

    ORACLE 批量更新三种方式比较

    针对这一需求,本文将详细介绍并比较三种常用的批量更新方法:通过PL/SQL循环更新、使用单条SQL语句更新以及采用子查询的方式进行更新。 #### 一、通过PL/SQL循环更新 这种方式是通过定义一个游标(Cursor),然后...

    SQL SERVER数据库批量更新程序 1.0.0.30

    2.支持将记录集导入为txt、xml以及wps excel或者office excel文件中,对超过65536行的查询结果集自动拆分工作表。 3.支持查询结果在水晶报表工具简单展示。 4.支持将查询出的结果集,批量复制到多个sql server服务器...

    使用SQL语句批量更新数据.rar

    本资料“使用SQL语句批量更新数据.rar”将深入探讨如何高效地使用SQL批量更新数据库中的记录。 一、SQL批量更新基础 1. UPDATE语句:批量更新的基础是SQL的UPDATE语句。基本语法如下: ```sql UPDATE 表名 SET ...

    mysql 批量更新及效率对比

    批量 Update 是最原始的批量更新方法,每条记录执行一次 Update 语句,例如: ```sql update test_tbl set dr='2' where id=1; ``` 这种方法的性能非常差,例如更新 100000 条数据需要 15.557 秒。 方法二:...

    批量更新两种方法实践

    在这个主题中,我们通常会遇到两种主要的方法:使用SQL语句批量更新和利用编程语言提供的数据处理库进行批量更新。 首先,SQL批量更新是最直接的方式,适用于对数据库的操作有直接控制的情况。例如,可以编写一个...

    DB2资料sql语法.zip

    总之,DB2资料sql语法.zip文件集合为想要学习和精通DB2 SQL的人员提供了一个完整的教程体系,从理论到实践,从基础到进阶,都能找到所需的支持。通过系统学习和实践,你可以提升在DB2环境下的数据管理效率,为职业...

    java批量执行SQL

    3. **批量添加SQL语句**:使用循环将每条记录封装成一条SQL语句,并通过`addBatch()`方法添加到批处理中。 ```java for (int n = 0; n ; n++) { ps.setLong(1, id[n]); ps.setString(2, name[n]); ps.setInt(3...

    access 一次执行多条sql语句

    ### Access一次执行多条SQL语句 在Access数据库管理中,有时我们需要在同一事务中执行多条SQL语句来确保数据的一致性和完整性。例如,在更新某个记录后可能还需要执行其他操作,如增加日志记录等。本文将详细介绍...

    DB2 SQL 精粹

    《DB2 SQL精粹》是一本深入探讨DB2数据库管理系统中SQL语言的专著,旨在帮助读者全面理解和熟练运用DB2 SQL进行数据管理和分析。DB2是IBM公司开发的一款关系型数据库管理系统,广泛应用于企业级的数据存储和处理,其...

Global site tag (gtag.js) - Google Analytics