今天项目中遇到一条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 性能问题总结 ...* 多使用 Commit 语句:在一个事务中,避免大批量修改的,这样可能由于不断扩充回滚段而影响性能 * 在写完一条 SQL 语句后,使用适当的工具(如 Explain plan)检查 SQL 语句的性能
- **问题及原因**:TempDB可能出现的问题包括空间不足、并发问题等,这些问题可能由不合理的配置、高并发操作或长时间运行的大批量事务引起。 #### 4. 索引的种类及其实际原理?如何有效地使用和维护索引? - **...
7. **控制批量操作的大小**:大批量的`INSERT`和`UPDATE`可能导致锁升级,超过一定数量时应考虑分批操作。 在索引的使用上,应结合应用需求考虑创建,避免大表过多索引,强制使用索引字段作为查询条件,并定期维护...
- **使用临时表取代一条一条插入**:对于大批量数据的插入,使用临时表可以显著提高效率。 - **循环次数很多时注意减少执行语句(附例子)**:减少循环中的SQL执行次数可以提高整体性能。 - **看程序执行时间及结果DB2...