社区
Oracle
帖子详情
求插入大量记录的高效方法?
qiujin
2005-09-27 03:16:55
我有一表CUSTOMER,拥有巨量记录,其中有一字段VALUE:NUMBER(8,4),现要求将原表中所有记录作为新记录插入,除VALUE增加1000外,其余字段值按原表字段值不变,原表中的旧记录保持不变。
望各位多多指教!力求高效!
...全文
208
18
打赏
收藏
求插入大量记录的高效方法?
我有一表CUSTOMER,拥有巨量记录,其中有一字段VALUE:NUMBER(8,4),现要求将原表中所有记录作为新记录插入,除VALUE增加1000外,其余字段值按原表字段值不变,原表中的旧记录保持不变。 望各位多多指教!力求高效!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Qqwwee_Com
2005-09-27
打赏
举报
回复
学习
===============================
CSDN小助手 是一款脱离浏览器也可以使用csdn论坛的
软件!
界面: http://qqwwee.com/
下载: http://qqwwee.com/csdn.rar 包含源代码
sasacat
2005-09-27
打赏
举报
回复
我写的本来就是这个意思啊,放心地用吧....
insert /*+ append */ into CUSTOMER nologging
select name,VALUE+1000,age from CUSTOMER;
或者
insert /*+ append */ into CUSTOMER(name,VALUE,age )
select name,VALUE+1000,age from CUSTOMER;
也是一样
laofang
2005-09-27
打赏
举报
回复
刚才漏了一点,重新写过:
insert /*+ append */ into CUSTOMER nologging
select /*+ parallel(old,8) */ * from CUSTOMER_OLD old;
insert /*+ append */ into CUSTOMER(a,b,c,...,VALUE) nologging
select /*+ parallel(old,8) */ a,b,c,...,VALUE+1000 from CUSTOMER_OLD old;
laofang
2005-09-27
打赏
举报
回复
我没什么高招,就插2次;在sasacat(傻傻猫) 的基础上再加上并行处理,速度会快一些:
insert /*+ append */ into CUSTOMER nologging
select /*+ parallel(a,8) */ * from CUSTOMER;
insert /*+ append */ into CUSTOMER(a,b,c,...,VALUE) nologging
select /*+ parallel(a,8) */ a,b,c,...,VALUE+1000 from CUSTOMER;
qiujin
2005-09-27
打赏
举报
回复
我的意思就是:
假设我表原来有三条记录:
NAME VALUE AGE
张三 2900 26
李四 3500.99 34
王五 8709 38
通过插入记录后,表中记录为:
NAME VALUE AGE
张三 2900 26
李四 3500.99 34
王五 8709 38
张三 3900 26
李四 4500.99 34
王五 9709 38
sasacat
2005-09-27
打赏
举报
回复
licsth() 你的并不算高效啊。还是要记录日志。
我的就是真正高效了,...加了 nologging 关键字,以保证不记录在日志里
然后提示了/*+ append */表示这是增加数据
小李木耳
2005-09-27
打赏
举报
回复
你说的不是要加1000行吧?那也得符合逻辑呀,按照你阐述的,真是不明白。
小李木耳
2005-09-27
打赏
举报
回复
“....,除VALUE增加1000外,其余字段值按原表字段值不变,原表中的旧记录保持不变。”
楼主什么意思吗?又说:“我的旧记录的VALUE字段不要加1000,保持不变。”明显矛盾啊!
小李木耳
2005-09-27
打赏
举报
回复
没法再明白了,按照我的sql执行一下就行了:
INSERT INTO CUSTOMER
(.., VALUE, ..,...)
(SELECT .., VALUE+1000, ..,...from CUSTOMER )
你不是要我说明...吧,是你要插入那张表的其他字段。
qiujin
2005-09-27
打赏
举报
回复
我的旧记录的VALUE字段不要加1000,保持不变。
qiujin
2005-09-27
打赏
举报
回复
licsth():我也不太明白你说的方法,能否解释一下?
qiujin
2005-09-27
打赏
举报
回复
sasacat(傻傻猫):我不太明白你说的方法,能否解释一下?
小李木耳
2005-09-27
打赏
举报
回复
好你个‘ sasacat(傻傻猫)’又碰到你了,我这几天没留意你加了一个角了。
我追...
qiujin
2005-09-27
打赏
举报
回复
望大家说的详细、清楚点。谢谢!
小李木耳
2005-09-27
打赏
举报
回复
但注意+1000之内不得有主key重复!!!
sasacat
2005-09-27
打赏
举报
回复
insert /*+ append */ into CUSTOMER(a,b,c,...,VALUE) nologging
select a,b,c,...,VALUE+1000 from CUSTOMER;
小李木耳
2005-09-27
打赏
举报
回复
INSERT INTO CUSTOMER
(.., VALUE, ..,...)
(SELECT .., VALUE+1000, ..,...from CUSTOMER )
jessica_zz
2005-09-27
打赏
举报
回复
select * from CUSTOMER for update;
SpringMVC+Hibernate+Spring整合实例
AOP则允许在不修改原有代码的情况下,
插入
新的功能或行为,比如日志
记录
、事务管理等。Spring还提供了
大量
的其他功能,如声明式事务管理、数据源配置、任务调度等。 在"SpringMVC+Hibernate+Spring整合实例"中,...
Tianlesoftware Oracle 学习手册(v1.0)高清完整PDF版
- **维护成本:**
插入
、删除和更新数据时需要维护索引,可能会增加写操作的成本。 **1.2.1.3 索引不足** - 当表中数据量较少时,创建索引可能不会带来明显的性能提升。 - 对于频繁更新的数据表,索引维护的成本...
MySQL
插入
大量
数据最好用批量
插入
插入
大量
数据到MySQL数据库时,执行单条
插入
语句的开销相对较大,包括网络延迟、每次
插入
都要进行事务处理和日志
记录
等。批量
插入
可以将多条
插入
语句合并为一条,从而减少网络往返次数和事务开销,提高整体数据
插入
...
oracle
高效
插入
数据,Oracle:
高效
插入
大量
数据经验之谈
【IT168评论】在很多时候,我们会需要对一个表进行
插入
大量
的数据,并且希望在尽可能短的时间内完成该工作,这里,和大家分享下我平时在做
大量
数据insert的一些经验。前提:在做insert数据之前,如果是非生产环境,...
C#
高效
批量数据
插入
技术详解
理解并掌握C#中批量
插入
数据的
高效
方法
,对于提升应用程序性能与数据处理能力至关重要。本章将介绍批量
插入
的基本概念、应用场景以及C#环境下实现批量
插入
时需要考虑的关键因素。当我们谈论批量
插入
,我们指的是在单...
Oracle
17,137
社区成员
55,257
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章