数据库优化

hzq237 2009-09-21 07:49:17
有1千万条数据要删除9百9十万条,怎么搞
...全文
104 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
shiyiwan 2009-09-21
  • 打赏
  • 举报
回复
后面那个的时间主要是花在选择10万数据建表上面

create table newtable as select ... from oldtable;

drop oldtable操作非常快的。
hzq237 2009-09-21
  • 打赏
  • 举报
回复
http://www.eygle.com/archives/2005/04/oracleoeouaeeae.html 这里讲 删除700万大约27分钟

ctas,then drop old table,and rename new table.

把表改名,然后建新表(表名字跟原来的一模一样),然后从改名的表里面取出不需要删除的十万条记录插入到新表里面去。就解决了。

上面的两个方法大该概需要多久


oraclemch 2009-09-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 hzq237 的回复:]
有1千万条数据要删除9百9十万条,怎么搞
[/Quote]

把表改名,然后建新表(表名字跟原来的一模一样),然后从改名的表里面取出不需要删除的一百万条记录插入到新表里面去。就解决了。
ojuju10 2009-09-21
  • 打赏
  • 举报
回复
http://www.eygle.com/archives/2005/04/oracleoeouaeeae.html
ojuju10 2009-09-21
  • 打赏
  • 举报
回复
用循环,每次删除小量数据后,提交
shiyiwan 2009-09-21
  • 打赏
  • 举报
回复
#2那个值得一试
hzq237 2009-09-21
  • 打赏
  • 举报
回复
好象不好,要留下十万行。
bancxc 2009-09-21
  • 打赏
  • 举报
回复
把这条存进临时表
然后清空表,或者删除表
在把那条插进来
可以吗
vc555 2009-09-21
  • 打赏
  • 举报
回复
ctas,then drop old table,and rename new table.

3,494

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧