SQL语句的效率不仅是sql语句的设计还有一些其他的原因比如网络 、是否有视图、是否有索引等等。这里主要描述的是我个人对于sql设计方面优化的一些见解:
首先要说明一下的是数据库SQL解析顺序:
(1)from:可以理解为检查表是否存在
(2)where : {index-》否则正常读取-》查找到后去看group by-》存在即放在临时表中 (有些交错执行)} having属性
(3)select ;
查询优化需要做的是养成良好的sql习惯:
使用表的别名;
不要跨用户访问表;
具体化每个select的结果集,变相缩小搜索集,特别是进行表连接时注意开销;
使用分析函数减少数据的获取量例如Nvl(),decode()等;
减少select集的之间的乘法存在因为乘法意味着是在扩大搜索集,当然不可避免的还是要用;
避免在WHERE子句中使用in,not in,or 或者having;
最终的查询设计语句中不要出现select * from ;
DISTINCT,UNION,MINUS,INTERSECT,ORDER BY等关键词谨慎使用;
少用update多用commit;
写sql句子的时候大小写也是影响执行效率,最好统一格式;
SQL 语句的执行计划是可以自己设定的,这个也是影响sql效率的关键因素之一;
真正的提高性能的方法还有一种就是创建临时表空间(自己想吧,我也用的不多)。。。。。

最新文章

  1. Money, save or spend, this is a problem .
  2. Luogu题目集合[6/未完待续]
  3. p2p软件如何穿透内网进行通信
  4. C++动态链接库测试实例
  5. android:layout_weight详解
  6. Leetcode 226 Invert Binary Tree python
  7. Catalog和Schema
  8. UVA796- Critical Links(无向图中的桥梁)
  9. MVC中的Views下面的视图放到Views文件夹外
  10. RSA算法优化
  11. C 函数参数 char **s与char *s[]
  12. 在tomcat中布置项目的介绍(一)
  13. echart css样式弄了几个月了,样式一直都没有好好解决,好激动
  14. SpringMvc 这篇文章写得不错 多多学习2017.6.29
  15. vue加elementui开发的分页显示
  16. 学习笔记——在vue中如何配置Jest(一)
  17. laravel orm
  18. Mysql 索引 n-gram分词引擎使用
  19. 【Android自动化】测试系统的应用程序安装与卸载性能,判断长时间反复安装对系统的整体性能影响
  20. 〖Linux〗bash和expect执行ssh命令行sshcmd.exp

热门文章

  1. Python 获取脚本路径以及脚本所在文件夹路径
  2. vijos1007 绕钉子的长绳子
  3. [Xcode 实际操作]七、文件与数据-(13)数据持久化存储框架CoreData的使用:编辑CoreData中的数据
  4. sticky,粘性定位
  5. ios 类似淘宝评论星星功能
  6. Centos 自动更新git
  7. Nginx功能介绍
  8. 几款常用的高质量web前端框架
  9. mysql issue:
  10. Coroutine(协程)模式与线程