如何提高select查询的效率

来源:百度知道 编辑:UC知道 时间:2024/05/24 05:55:40

学学 oracle查询优化

编码方面:
利用索引,避免大表FULL TABLE SCAN;
合理使用临时表;
避免写过于复杂的sql,不一定非要一个sql解决问题;
在不影响业务的前提下减小事务的粒度;
使用光标来降低复杂度。
设计方面:
尽量依赖oracle的优化器,并为其提供条件;
合适的索引,索引的双重效应,列的选择性.
选用适合的ORACLE优化器,共有3种:
a. RULE (基于规则) -- RBO(Rule-Based Opt)
b. COST (基于成本) -- CBO(Cost-Based Opt)
c. CHOOSE (选择性) –RBO & CBO 混合

1,建表索引
2,表之间关联时尽量使用inner关联,而最好不要使用Left 与Right关联
3,在使用存储过程查询与使用视图查询时,可能的话尽量使用视图.我测试过,用100万条数据,同样的语句,查询速度如下:视图>函数>存储过程

这个不能能用一句两句说的明白的,除了技术,还有经验在里面