您的位置 首页 php

每日一问-常见面试题6之 MySQL 的索引什么情况下会失效?

MySQL 的索引什么情况下会失效?

总结下来7字语言,简单好记

模型函连运最快

  • 模 – 代表like,l like查询是以%开头,索引失效
  • 型 – 代表类型 如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引
  • 函 – 代表函数,避免在where子句中 = 的左边使用表达式操作或者函数操作
  • 连 – 代表连接符避免在where子句中使用 or 来连接条件,因为如果两个字段中有一个没有索引的话,引擎会放弃索引而产生全表扫描
  • 运 – 代表运算符,避免在where子句中使用 != ,< > 这样的符号,否则会导致引擎放弃索引而产生全表扫描
  • 最 – 代表最左原则,在使用联合索引时要注意最左原则,例如如果当前联合索引是 index(a,b,c) ,那么如果where子句中有 a 就会用到联合索引,但是如果只用到 b,c 就会失去索引效果
  • 快 – 代表不使用索引更快,如果mysql估计使用全表扫描要比使用索引快,则不使用索引

文章来源:智云一二三科技

文章标题:每日一问-常见面试题6之 MySQL 的索引什么情况下会失效?

文章地址:https://www.zhihuclub.com/151616.shtml

关于作者: 智云科技

热门文章

网站地图