高效更新方案

碧水幽幽泉 2017-10-28 01:52:17
有一张表A,属性有Id ,name ,age这张表的数据量达到100万,要把所有的age都更新为age+1,请问怎么实现最高效?
...全文
311 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
碧水幽幽泉 2017-10-28
  • 打赏
  • 举报
回复

--方案1:
如果有索引,先把索引删除后

再update

最后把索引重新创建一下

因为索引对update影响很大

--方案2:
1、create table newA as select id,name,age+1 age from A;
2、drop table A;
3、rename newA to A

--方案3:
set autocommit 1000;
update table_name set age=age+1;

--方案4:
批量更新

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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