MySQL优化--where条件字段的顺序对效率的影响 (02)
来源:互联网 发布:stc89c52单片机资料 编辑:程序博客网 时间:2024/04/19 10:20
学生表 Student
id(编号)name(名字)age(年龄)height(身高)1Tommy261702Jerry231803Frank30160
如表所示,这里只是呈现了3条数据,我们这里假设有1万条数据,
查询年龄25岁以上,身高170以上的全部学生
Select * from Student where age > 25 and height > 170;//正常情况下可以这么写,
假设1:年龄在25岁以上的有8000个学生,而身高170以上的只有10个学生,
上述的SQL的执行顺序和查询的行数应该是:
1.先查询年龄25岁以上的学生,结果有8000条记录,
2.再查询身高170以上的学生,就得在8000条结果里再次判断,最坏的可以遍历8000次左右,这效率较低
假如更改上述SQL语句where条件字段的顺序,如下:
Select * from Student where height > 170 and age > 25;
那么结果将是:
1.首先是查询出身高170以上的学生,结果只有10个;
2.然后再在这10个结果中查询出年龄大于25岁的学生,这样遍历的次数一下子就减少了很多很多
总结:所以,千万不要以为where语句中字段的顺序可以随便乱写,应该结合具体情况来安排好顺序,以使效率更高,
当然,如果想效率进一步提高,应该在这两个字段上建立索引 (题外: 索引的建立以及 什么条件下索引才会被调用)
0 0
- MySQL优化--where条件字段的顺序对效率的影响 (02)
- SQL 两表关联查询 where 条件中等号两端字段顺序对效率的影响
- SQL两表关联查询where条件中等号两端字段顺序对效率的影响
- where条件的顺序是否影响mysql的执行效率
- 索引字段顺序对效率的影响
- Oracle数据库Where条件执行顺序 及Where子句的条件顺序对性能的影响
- Oracle数据库Where条件执行顺序 及Where子句的条件顺序对性能的影响
- Oracle数据库Where条件执行顺序 及Where子句的条件顺序对性能的影响
- SQL where 条件顺序对性能的影响有哪些
- SQL where 条件顺序对性能的影响有哪些
- SQL where 条件顺序对性能的影响有哪些
- SQL where 条件顺序对性能的影响有哪些
- mysql中Where条件中字段顺序的重要性
- mysql中Where条件中字段顺序的重要性
- mysql中Where条件中字段顺序的重要性
- Mysql where条件对int字段的处理
- where条件对查询的影响
- Where条件中字段顺序的重要性
- php 环境配置。
- 自定义控件三部曲之动画篇(八)——PropertyValuesHolder与Keyframe
- 权限系统无法登录,直接跳转到业务系统
- Centos下安装Qt4.8.6和交叉编译qt-4.8.6的configure
- Xftp连接失败,解决办法
- MySQL优化--where条件字段的顺序对效率的影响 (02)
- java 静态导入,一看就懂了
- 圈叉棋不败策略研究
- java设计模式之策略模式
- Kaggle 新手教程(一)
- 自定义控件三部曲之动画篇(九)——联合动画的代码实现
- 关于javascript垃圾回收机制
- codeforces 186D Mushroom Scientists 不等式
- Android获取屏幕分辨率及dp与 pix间的转换