MySQL的架构分成了server层和存储引擎层(storage engine),server层通过调用存储引擎层来返回数据。
1. Using index 表示查询的列被索引覆盖,因而无需回表查询,因而效率更高。
2. Using index,Using where 表示查询的列被索引覆盖,且where筛选条件是索引列前导列的一个范围,或者是索引列的非前导列。
3. Using where 表示查询的列为被索引覆盖,且where筛选条件是索引前导列的一个范围,或者是索引列的非前导列,或者是非索引列,因为未被索引覆盖,所以需要回表,因而性能比前两者差。
4. Extra 为null表示查询列未被索引覆盖,且where筛选条件是索引的前导列,这意味着用到了索引,但是部分字段未被索引覆盖,必须通过“回表”来实现,因而性能也比前两者差。