如何快速的对1亿数据另表存放?

现因需要生成全量数据(1亿)到另一个表中,此全量数据是查询多个表得到的结果,查询数据(select ... from ... for fetch only)是1.5小时,
当把这些数据插入的另一个表时,测得SQL(insert into ... select ... from ...)执行时间为5小时,
而且数据库会强制中断连接,报错SQLCODE:-1224

SQL语句的执行计划:
Estimated Cost = 8450150.000000
Estimated Cardinality = 1.003241

应用程序,没有LOAD权限:(

请问如何较快的实现对全量数据的另表存放?
参与14

9同行回答

masalymasaly其它易诚
如果要导入的表是新表,可以允许表坏重建的话,就用以下不记日志的方式:db2 +c "alter table activate not logged initially"db2 +c "insert into .. from ..."db2 commit如果insert的时候失败了,表是会破坏的,需要重建。如果允许不记录日志的操作,建议还是用load。...显示全部
如果要导入的表是新表,可以允许表坏重建的话,就用以下不记日志的方式:

db2 +c "alter table activate not logged initially"
db2 +c "insert into .. from ..."
db2 commit

如果insert的时候失败了,表是会破坏的,需要重建。

如果允许不记录日志的操作,建议还是用load。收起
软件开发 · 2015-08-12
浏览1631
kxm327kxm327软件开发工程师7654321
已解决,通过表分区 查询数据。显示全部

已解决,通过表分区 查询数据。

收起
软件开发 · 2016-10-14
浏览1501
kxm327kxm327软件开发工程师7654321
回复 6# stevenluffy load from cursor 要求是将一个表中的数据保存到另外一张表中,且对应的列的类型是一致的.而我查询的是多个表关联的结果,这样不行啊!显示全部
回复 6# stevenluffy
load from cursor 要求是将一个表中的数据保存到另外一张表中,且对应的列的类型是一致的.而我查询的是多个表关联的结果,这样不行啊!
收起
软件开发 · 2015-08-13
浏览1553
kxm327kxm327软件开发工程师7654321
回复 2# masaly  呵呵 应用程序没有LOAD权限:(显示全部
回复 2# masaly  呵呵 应用程序没有LOAD权限:(收起
软件开发 · 2015-08-12
浏览1568
masalymasaly其它易诚
load,速度快,但是不记录日志。显示全部
load,速度快,但是不记录日志。收起
软件开发 · 2015-08-12
浏览1593

提问者

kxm327
软件开发工程师7654321

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2015-08-12
  • 关注会员:1 人
  • 问题浏览:5678
  • 最近回答:2016-10-14
  • X社区推广