Mysql 索引失效

1. 主键失效

主键是int自增类型html

看以下2条sql:mysql


查询条件没有加引号,致使全表扫描,很是耗时。
还有一种状况,若是索引是字符串类型,查询条件没有加引号也是会失效的
https://dev.mysql.com/doc/refman/5.5/en/type-conversion.htmlsql

2. 多表join查询按照主表ID排序,索引失效

如图,hotel_info 中二十多万数据,连了3张关联表,其中 hotel_supplier_vender_relationhotel_supplier_management 只有2条和4条数据。由于最开始是生成环境报的查询速度慢的问题。由于表结构都同样,最开始怀疑是mysql版本的问题,由于生成环境是5.6,而测试环境是5.7,比较5.7作了不少优化。测试

可是关于索引失效应该不是版本的问题,因而作了个实验。将测试环境表结构和数据导一份到本地,将2张关联表的数据不断减小,当减小到每张表都为7条的时候,奇迹出现了。此时无论减小一条哪张表的数据,都会出现索引失效的问题。优化

此时能够强制走索引,或者在表中增长数据均可以解决问题(ps:生成环境不是你想加就能加的)。
.net

相关文章
相关标签/搜索