`

关于oralce大批量查询语句速度慢,IO占用高的问题

 
阅读更多
今天项目中遇到一条sql语句,其中t_userdownreslog表数据4千万条,t_userinfo 数据2千万条.

修改前
select t.user_account username,
              t.mobile usermobile,
              t.user_id userid,
              u.down_type downtype,
              u.resourceid appid,           
              u.resourcename appname,
              u.package_id jarid      
          from t_userdownreslog u,t_userinfo t
        where u.transaction_id = '10111902201098785862'
          and t.user_id = u.user_id 
          and u.down_status=2 
          and u.tran_type=2;


修改后
select /*+FIRST_ROWS*/
              t.user_account username, 
              t.mobile usermobile,
              t.user_id userid,
              u.down_type downtype,
              u.resourceid appid,           
              u.resourcename appname,
              u.package_id jarid
          from t_userdownreslog u,t_userinfo t
        where u.transaction_id = '10111902201098785862'
          and t.user_id = u.user_id 
          and u.down_status=2  
          and u.tran_type=2;



多了个,/*+FIRST_ROWS*/
分享到:
评论

相关推荐

    Oracle性能问题总结

    Oracle 性能问题总结 ...* 多使用 Commit 语句:在一个事务中,避免大批量修改的,这样可能由于不断扩充回滚段而影响性能 * 在写完一条 SQL 语句后,使用适当的工具(如 Explain plan)检查 SQL 语句的性能

    面试--DBA30问

    - **问题及原因**:TempDB可能出现的问题包括空间不足、并发问题等,这些问题可能由不合理的配置、高并发操作或长时间运行的大批量事务引起。 #### 4. 索引的种类及其实际原理?如何有效地使用和维护索引? - **...

    Oracle存储过程的编写经验与优化措施(分享)

    7. **控制批量操作的大小**:大批量的`INSERT`和`UPDATE`可能导致锁升级,超过一定数量时应考虑分批操作。 在索引的使用上,应结合应用需求考虑创建,避免大表过多索引,强制使用索引字段作为查询条件,并定期维护...

    DB2使用经验积累PDF

    - **使用临时表取代一条一条插入**:对于大批量数据的插入,使用临时表可以显著提高效率。 - **循环次数很多时注意减少执行语句(附例子)**:减少循环中的SQL执行次数可以提高整体性能。 - **看程序执行时间及结果DB2...

Global site tag (gtag.js) - Google Analytics