您的位置:程序门 -> db2 -> 数据库开发



关于db2 的delete问题? 请大侠看看


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


关于db2 的delete问题? 请大侠看看
发表于:2007-12-04 10:37:53 楼主
不知道为什么一个很简单的表,大约8万多的数据,我想删除之中的7万多条,但是速度奇慢,
语句是     :
delete   from   tb_name   where   date   !=   20071203


大虾帮忙看看,在线等结果?
发表于:2007-12-04 13:22:031楼 得分:0
在表上是否有很多的索引?
发表于:2007-12-04 19:34:062楼 得分:0
导出需要保留的约一万条数据,然后replace回那个表试试。
export   to   file   of   del   select   ...
load   from   file   of   del   replace   into   table   nonrecoverable
发表于:2007-12-04 19:36:153楼 得分:0
replace         一样也是要先去删除的
发表于:2007-12-04 20:05:394楼 得分:0
删除数据的话,load   replace会比delete快很多。
试试load   replace一个空文件到一个有很多数据的表中,就可知道它删除那些数据所花的时间是多少。
alter   table   table_name   activate   not   logged   initially   with   empty   table清空大表也很快。
发表于:2007-12-05 09:22:305楼 得分:0
可以将要保留的数据插入到一个临时表,如
insert   into   tb_name_tmp   select   *   from   tb_name   where   date   =   20071203  

然后删除tb_name,并将tb_name_tmp重命名为tb_name
发表于:2007-12-05 14:15:276楼 得分:0
表有5个索引,弱弱的问一句,表的索引对删除数据的速度有影响吗?
发表于:2007-12-05 15:15:057楼 得分:0
有影响
发表于:2007-12-06 11:16:038楼 得分:0
能详细说下   索引对删除表数据的影响吗?具体点,最好能说出为什么?
发表于:2007-12-07 13:00:089楼 得分:0
删除数据时,要删除相应的索引数据。
发表于:2007-12-10 11:30:1010楼 得分:0
有影响,删除数据时,要删除相应的索引数据,对索引进行更新,还有对索引进行维护。这些都需要另外花费时间来完成的,所以会有影响。另在插入的时候也是这个原因,索引多,插入的会慢。
发表于:2007-12-10 13:22:4411楼 得分:0
我可以这么理解吗?
索引仅仅给查询减少时间,但是给插入和删除数据增加时间?
发表于:2007-12-12 16:45:4612楼 得分:0
可以那么理解

而且,索引也不一定会给查询减少时间的,需要具体问题具体分析。


快速检索

最新资讯
热门点击