易截截图软件、单文件、免安装、纯绿色、仅160KB

今天的oracle面试题 - Oracle / 基础和管理

1、有一张表A,属性有Id ,name ,age这张表的数据量达到100万,要把所有的age都更新为age+1,请问怎么实现最高效?
高效?坐等大侠
我就会这样update table_name set num=num+1 ;

你可以回答,表设计不好,age会随着时间变化而变化,改用birthday,用date类型吧

引用
你可以回答,表设计不好,age会随着时间变化而变化,改用birthday,用date类型吧

这个是面试题,你就不要考虑设计问题了,就吧age当成个普通的int类型的列,把他全部加1。

100万也应该很快吧

update table_name set num=num+1

如果有索引,先把索引删除后

再update

最后把索引重新创建一下

因为索引对update影响很大

引用
如果有索引,先把索引删除后

再update

最后把索引重新创建一下

因为索引对update影响很大


同意这种做法...
重建索引很快...



SQL code:
--在允许的情况下可以
1、create table newA as select id,name,age+1 age from A;
2、drop table A;
3、rename newA to A;



有没有人用批量更新操作呀

为什么这样很低效?
update table_name set num=num+1

这也有搞头?
批量更新呗

设置自动提交行数,会快很多
set autocommit 1000;
update table_name set age=age+1;

dml 操作的缺点:
1、因为一次性修改的数据太多,而导致回滚段、临


相关问答:

[原创] ORACLE 连接字串 - Oracle / 非技术区

假设table01 中有 以下资料
emp_no emp_name
------- ------------
0001 TOM
0002 JOHN
0003 MARY
常用电话 
而我们要得到以下的OUTPUT (或是各种其他的output)
0001,TOM
0002,JOHN ......

java连不上oracle? - Java / Java EE

java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=186646784)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBErro ......

Oracle临时表使用问题 - Oracle / 开发

我的处理是这样的:
我有一个很大的数据集合,处于性能方面的考虑需要使用临时表过渡,并且使用分页的方式向临时表中插入数据,数据使用完毕后,删除临时表的数据。
出现的现象:当Oracle重新启动后,第一页插入的 ......

oracle 如何调用mssql存储过程 - Oracle / 高级技术

oracle 通过BDlink 连接到一台MS SQL,查询都可以,但是不知道如何在oracle通过DBLink调用MS SQL的存储过程,求解~谢谢~
引用
oracle 通过BDlink 连接到一台MS SQL,查询都可以,但是不知道如何在oracle通过DBLink调用M ......

oracle 存储过程中应用事务的问题 - Oracle / 开发

SQL code:

CREATE OR REPLACE PROCEDURE usp_refreshTopN IS
BEGIN
--文档
INSERT INTO topnresource(resourceId,title,type,cover,brief,properUser,tag,clickAmount,createDate,topNCreateDate,organizat ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号