sql优化最重要的一点就是要建立合适的索引,据说50%以上的效率问题都是通过这个方法解决。
引用国内一位资深的ORACLE专家的话:"我其实只懂点(挨踢)知识,IT里面其实只懂点甲骨文,甲骨文里面其实只懂点数据库,数据库里面其实只懂点SQL,SQL里面其实只懂点索引"
sql优化方法:
1、建立合适索引
-- 都需要在a上建立索引 select a from T; select a, b from T1 join T2 on using(a);
有时也需要考虑 复合索引
2、避免没有利用上索引
假如在字段a上已经建立索引,如下形式会使用不上索引:
3、先过滤(where)。特别是在join之前,还要做好投影(select)
join是得到笛卡儿积,如果没有先做足够过滤,形成中间表可能非常大,以至于放到外存中存储。这样可能导致性能急剧下降。
原文:http://www.cnblogs.com/johnchow/p/4835455.html