【二十三、MySql】进阶篇--索引--使用规则--索引失效情况

情况一:
不要在索引列上进行运算操作,否则索引将失效
例如:
【二十三、MySql】进阶篇--索引--使用规则--索引失效情况_第1张图片

情况二:
字符串类型使用时,不加引号,索引将失效
例如:
【二十三、MySql】进阶篇--索引--使用规则--索引失效情况_第2张图片
情况三:
模糊查询,如果是头部模糊,索引将失效;尾部模糊,索引不会失效
例如:
【二十三、MySql】进阶篇--索引--使用规则--索引失效情况_第3张图片
【二十三、MySql】进阶篇--索引--使用规则--索引失效情况_第4张图片

情况四:
or条件连接,用or分割开的条件,如果or之前有索引列,而or后面列没有索引,那么涉及的索引都不会生效
例如:
【二十三、MySql】进阶篇--索引--使用规则--索引失效情况_第5张图片
所以,当age也增加索引时,上述sql的索引才生效,如图:
【二十三、MySql】进阶篇--索引--使用规则--索引失效情况_第6张图片
情况五:
如果MySQL评估使用索引比全表扫描更慢,则不使用索引。受数据分布的影响!

你可能感兴趣的:(数据库,mysql)