ZDNetChina中文社区 » 数据库开发 » DB2 » 关于db2 的delete问题?


2007-12-8 10:16 烂泥
关于db2 的delete问题?

不知道为什么一个很简单的表,大约8万多的数据,我想删除之中的7万多条,但是速度奇慢,
语句是     :
delete   from   tb_name   where   date   !=   20071203


大虾帮忙看看,在线等结果?

2007-12-8 10:16 小榕
导出需要保留的约一万条数据,然后REPLACE回那个表试试。
export   to   file   of   del   select   ...
load   from   file   of   del   replace   into   table   nonrecoverable

2007-12-8 10:17 internetx
replace         一样也是要先去删除的

2007-12-8 10:18 safexx
删除数据的话,load   replace会比DELETE快很多。
试试load   replace一个空文件到一个有很多数据的表中,就可知道它删除那些数据所花的时间是多少。
alter   table   table_name   activate   not   logged   initially   with   empty   table清空大表也很快。

2007-12-8 10:18 virust
可以将要保留的数据插入到一个临时表,如
insert   into   tb_name_tmp   select   *   from   tb_name   where   date   =   20071203   

然后删除tb_name,并将tb_name_tmp重命名为tb_name

页: [1]
查看完整版本: 关于db2 的delete问题?


Powered by Discuz!  Archiver   © 2001-2006 Comsenz Inc.