select version():5.7.21
MySQL 提供了一个 EXPLAIN 命令, 它可以对 SQL 语句进行分析, 并输出 SQL 执行的详细信息, 以供开发人员针对性优化.
例如分析一条 SELECT 语句
EXPLAIN SELECT * FROM `user` WHERE id = 1
EXPLAIN 结果中的type字段
Tips:常见的扫描方式
system:系统表,少量数据,往往不需要进行磁盘IO
const:常量连接
eq_ref:主键索引(primary key)或者非空唯一索引(unique not null)等值扫描
ref:非主键非唯一索引等值扫描
range:范围扫描
index:索引树扫描
ALL:全表扫描(full table scan)
type扫描方式由快到慢
system > const > eq_ref > ref > range > index > ALL
1.system