1.全值匹配
指where的条件尽量跟建立的索引一致
2.最佳左前缀
指按照索引顺序进行设置where筛选条件,,不按顺序或者缺失左边列,则索引会失效
3.不在索引上做任何操作(计数、函数或者类型转换)
指count,sum这类的,会导致索引失效
4.存储引擎不能使用索引中范围条件右边的列
指where条件中,范围条件开始及其之后的,就不纳入索引范围内,且范围筛选条件前的,需要按照索引建立的顺序来设置。
5.尽量使用覆盖索引
指索引列覆盖select查询的列,查询信息会直接从索引中读取,不会读取数据文件,尽量少用select *
6.使用不等于,is null 或者is not null时候,索引失效
原理同范围索引是一样的
7.like查询以通配符开头的,索引会失效
类似 a like ‘%123……’这种索引会失效,如果非要使用,则尽量使用覆盖索引来解决。
8.字符串不加单引号,索引失效
原理同第3点的类型转换,如果犯这种错误,我觉得您可能不太适合这个岗位
9.用or关键字时,索引失效

本文详细介绍了九种SQL索引优化技巧,包括全值匹配、最佳左前缀、避免索引上操作、范围条件限制、覆盖索引使用、不等式查询、LIKE查询优化、字符串类型规范及OR关键字的正确应用,帮助提升数据库查询效率。
2049

被折叠的 条评论
为什么被折叠?



