sql语句中where后边的哪些条件会使索引失效 -- SQL语句优化

时间:2019-09-17 23:57:42   收藏:0   阅读:266

在我们编写sql的过程中where的条件使用不当会使索引(index)失效

1. 在 where 子句中使用!=或<>操作符,会使引擎放弃使用索引而进行全表扫描

2. 在 where 子句中对字段进行 null 值判断,会使引擎放弃使用索引而进行全表扫描

技术分享图片

3. 在 where 子句中使用 or 来连接条件,会使引擎放弃使用索引而进行全表扫描

技术分享图片

可改为:

技术分享图片

 4. 在 where 子句中对字段进行表达式操作,会使引擎放弃使用索引而进行全表扫描

技术分享图片

可改为:

技术分享图片

5. 在where子句中对字段进行函数操作,会使引擎放弃使用索引而进行全表扫描

技术分享图片

6. 在 where 子句中的“=”左边进行函数、算术运算或其他表达式运算,系统将可能无法正确使用索引

 

原文:https://www.cnblogs.com/woxbwo/p/11538080.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!