一、成功的索引优化
1.表数据如下:
2.查询语句如下:
explain select id, age, level from employee where dpId = 1 and age = 30 order by level
Extra: Using where; Using filesort
出现了Using filesort需要进行优化。方法很简单,为查询,分组或排序的字段建索引即可。
3.建索引优化:
create index idx_employee_dla on employee(dpId, age, level)
再次查询结果如下,type为ref,使用到了索引key,Extra为Using Where; Using index,优化成功:
二、跳过中间索引,使索引失效
索引的顺序为 id, dpId,age,level,查询时跳过age索引或使用>,<,<>,!=条件查询age索引
Extra出现Using filesort,索引失效,需要优化。
三、查询字段加入非索引字段,使索引失效
userName为非索引字段,当查询userName字段时,Extra为:Using index condition
四、使用>, <, <>, != 使索引失效
原文地址:http://blog.51cto.com/12874079/2149404
时间: 2024-11-09 10:28:51