Oracle应用之批量递增更新数据脚本
需求:更新用户表的工号,格式为“GD1,GD2,...”的格式,如果有数据取最大值再递增
E1:先查询出是否有数据,有数据取最大值再递增,使用nvl函数
/* 查询max值*/
select nvl(max(to_number(replace(t.user_num, 'GD', ''))), 0)
from t_user t
where t.user_num like 'GD%';
E2:创建Oracle序列,start with改为max值
/* Create sequence,start with改为max值 */
create sequence user_num_t_user
minvalue 1
maxvalue 999999999999999999999999999
start with 200
increment by 1
cache 20;
commit;
/* drop sequence */
drop sequence user_num_t_user;
E3:批量更新
/* batch update*/
update t_user
set user_num = 'GD' || user_num_t_user.nextval
where user_num is null
and IS_OUTNET_REG = 0;
E4:如果下次使用序列,记得更改start with的值,因为每次使用都会更新这个值的
上面方法是使用Oracle序列的方法,如果用Oracle的rownum,也是可以实现需求的,脚本如:
update t_user
set user_num = 'GD' ||
(rownum +
(select nvl(max(to_number(replace(t.user_num, 'GD', ''))),
0)
from base_user t
where t.user_num like 'GD%'))
where user_num is null;
Oracle应用之批量递增更新数据脚本的更多相关文章
- oracle批量新增更新数据
本博客介绍一下Oracle批量新增数据和更新数据的sql写法,业务场景是这样的,往一张关联表里批量新增更新数据,然后,下面介绍一下批量新增和更新的写法: 批量新增数据 对于批量新增数据,介绍两种方法 ...
- Oracle CDC (Change Data Capture)更新数据捕获——概述
Change Data Capture能高效识别并捕获数据的插入.修改和删除,使更新数据供个人或应用使用. CDC从oracle 9i开始引入,//TODO 在11G R2之后的版本里将取消支持,被O ...
- ORACLE基本SQL语句-添加更新数据函数篇
一.添加数据 /*添加数据*/insert into STU values('stu0004','赵一',18,1,"kc0004");insert into STU(STU_ID ...
- mongodb批量update更新数据
需要先查找出相关的记录,然后循环处理更新数据.如下案例,更新所有status=1的数据的gender值为2 db.getCollection('test').find({"status&qu ...
- Oracle生成批量清空表数据脚本
select 'DELETE FROM ' || a.table_name || '; --' || a.comments from user_tab_comments a where a.table ...
- Oracle 使用MERGE INTO 语句更新数据
/*Merge into 详细介绍MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句.通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配 ...
- Oracle CDC (Change Data Capture)更新数据捕获——Asynchronous HotLog Mode(附带简单的kettle任务实现数据同步)
Performing Asynchronous HotLog Publishing Step 1 Source Database DBA: Set the database initializat ...
- Salesforce LWC学习(三十五) 使用 REST API实现不写Apex的批量创建/更新数据
本篇参考: https://developer.salesforce.com/docs/atlas.en-us.224.0.api_rest.meta/api_rest/resources_compo ...
- oracle使用sequence批量写数据
本博客是对之前写的博客Oracle批量新增更新数据的补充,oracle的知识真是多,其实要学精任何一门知识都是要花大量时间的,正所谓: 学如逆水行舟,不进则退 先介绍oracle sequence的一 ...
- oracle或mysql定时增量更新索引数据到Elasticsearch
利用kettle Spoon从oracle或mysql定时增量更新数据到Elasticsearch https://blog.csdn.net/jin110502116/article/details ...
随机推荐
- OS期末复习总结
期末样题 : 链接:https://pan.baidu.com/s/12Mfi_lnhBDbuke6B_qCiJg 提取码:khp7 一.易错易混点: 下列进程调度算法中,可能引起进程长时间得不到运行 ...
- SpringSecurity配置 1
spring security整合步骤 过滤器链 SpringSecurity的本质就是一个过滤器链,内部包含了提供各种功能的过滤器,基本案例中的过滤器链如下图所示: UsernamePassword ...
- 前端预览和打印PDF的两种方式
最近工作中遇到了一个需求,就是前端选择表格中的某一条数据去请求后端接口,后端返回的是一个PDF文件的下载地址,但是需求不希望用户下载下来再去打印,而是直接预览展示,然后就能打印. 一开始按照网上的方式 ...
- 负载均衡原理之一:DNS轮循
DNS轮循是指将相同的域名解析到不同的IP,随机使用其中某台主机的技术,该项技术可以智能的调整网站的访问量到不同服务器上,减轻网站服务器的压力,实现负载匀衡;如果您感觉到单一的主机已经不堪负载你网站日 ...
- FastAPI认证系统:从零到令牌大师的奇幻之旅
title: FastAPI认证系统:从零到令牌大师的奇幻之旅 date: 2025/06/06 16:13:06 updated: 2025/06/06 16:13:06 author: cmdra ...
- 企业微信ipad协议、收发消息、聚合聊天实现
在当今数字化时代,企业如何有效连接客户.提升营销效率成为了一个重要议题.iPad协议,或称企业微信协议,作为基于微信iPad协议的智能接口服务,优势及其在企业营销中的应用.什么是iPad协议? 帮助& ...
- 基于 StarRocks 的指标平台查询加速方案
项目背景 指标管理平台按指标查询类型可以划为落表指标和即席查询指标. 落表指标:可选择不同的维度生成多个结果表(每天提交任务写入结果表),对指标进行取数的时候会根据查询条件自动匹配最合适的结果表进行查 ...
- NOI 2017 蚯蚓排队 题解
Problem 原题链接 Meaning 给定一些数字,对它们进行首尾相接和断开两种操作.对于每次询问,求对于每个数字,其后长度一定的数字串在给定数字串中出现的次数,并给出这些次数之积. Soulti ...
- Aug. 2023 普及组模拟赛 3
题面 T1 最大生成树 Meaning 给定一个完全图,两点之间的边权为这两个点点权之差的绝对值,求这个图的最大生成树. Solution 对于最小生成树,我们可以考虑 Kruskal 算法. Kru ...
- MongoDB入门实战教程(3)
上一篇我们了解了MongoDB的复制集概念和复制集的搭建,本篇我们来了解一下如何实现数据恢复 和 提升安全性的一些实践. 1 Mongo Tools实现数据恢复 MongoDB 4.4之后,备份与恢复 ...