ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 我用过的SQL优化方法总结

我用过的SQL优化方法总结

原创 Linux操作系统 作者:0x0x0x 时间:2012-06-29 12:56:39 0 删除 编辑
 
参与过几个项目,我深知SQL性能优化是一个很复杂、很博大精深的一个专题!
 
由于我的经验目前还不是非常多,不过既然是写日志,那么就先对我目前所熟知的方法做个记录吧,

日后,随着项目的积累,相信我的积累也会越来越多!届时将不断完善该专题!
 
我熟知的SQL优化方法总结:
 
1、where 的过滤条件,请注意过滤顺序。一般来说能尽快将结果集过滤成小结果集的条件应该写在后面!
 
2、select '*' from tab 其中的星号最好换成具体的列名,加快oracle的解析!
 
3、使用decode来避免重复的连接!
 
4、使用truncate 来删除整张表的数据,而不用delete!
 
5、在group by 字句中尽量避免使用having字句过滤,尽量在where条件里先过滤掉!
 
6、使用表的别名来明确列!
 
7、用EXISTS代替IN,NOT EXISTS代替NOT IN,有时可以考虑用MINUS!
 
8、少用DISTINCT,有时可以用EXISTS代替!
 
9、建立合适的索引,并且定期重建索引!
 
10、SQL语句书写规范,尽量全用大写!
 
11、用UNION ALL 代替OR!
 
12、用IN来替换OR!
 
13、少用ORDER BY ,除非不得已,否则一般别急着排序!
 
14、少用LIKE '%DD%'这样的语句,可以考虑用INSTR来做对比!
 
15、善于对SQL分析捕获,理解业务,设计表结构,具体环境具体分析!

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26977915/viewspace-734122/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-06-26

  • 博文量
    35
  • 访问量
    92247