怎样提高删除的效率,请各位高手看看?
一表,数据3000万,现想删除部分数据,有时间字段(字符型12位),上有索引,如200704081200
可以用该字段确定删除范围
delete from 表 where in_date> '200704080000 ' and in_date < '200704090000 '
表示删除一天的数据,数据量一般6万,
现问题速度太慢,好几十分钟
有什么好方法吗
------解决方案--------------------分几次删除,在where条件中加上rownum <某数量,每删除一次后commit;
------解决方案--------------------给in_date建个索引
然后where条件中可以用like '2000408% '
还可以定义一个变量,把删除语句加到loop中
达到100条的时候进行一次提交