explain 在查询语句前加上进行分析
数据库索引会大大优化数据的查询,所以对数据表建立索引是很有必要的
优化方案
1.最左前缀法则:数据库建立的复合索引会采用最左前缀法则。
当进行数据查询时,限制条件需要和建立复合索引的顺序相匹配,此时的查询采用的是最左前缀法则。
举例: 如果复合索引的顺序为a->b->c。
如果按 a - > c - > 索引有效
那么如果按照a->c查找时, a索引有效,c索引无效
如果按照a->b 查找时,a,b索引都有效
如果按照b->c 查找时,b,c索引都失效
如果只有b或c时,都无效
原则就是,从左到右的顺序,哪里断开哪里失效
2.索引字段如果放在 范围查找的右边,索引会失效
索引为什么会失效?
由于是复合索引,复合索引的排序规则是先按照左边的排序,如果相同,则按照右边的排序,那么用不到第一个,就肯定用不到第二个
3.原则上不对索引进行算数处理,类似加减,函数,类型转换
4.减少select字段中* 的使用,会使用不到覆盖索引(覆盖索引:select的查询字段和where字段使用的索引一致)。也会查找很多不必要的字段,浪费带宽
覆盖索引会防止回表操作
5.like模糊查询的优化
(1)前后两个%是用不到索引的。应该去掉前面的%。
(2)如果要使用前后两个%, 需要用到覆盖索引 select name from users where name = 'zs';
6.能使用limit就使用limit
本文介绍了数据库索引的优化方案,包括最左前缀法则、避免对索引字段进行算术处理、减少全字段选择、LIKE模糊查询优化及合理使用LIMIT等。通过这些技巧可以显著提升数据库查询效率。
1720

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



