使用 EXPLAIN 函数可以清楚的查看语句的执行情况
EXPLAIN
select id from b_nc_card where id != 10000;
一共查询了:530912 行
优化后
EXPLAIN (select id from b_nc_card where id > 10000) union all (select id from b_nc_card where id < 10000 and id > 0) 1 SIMPLE b_nc_card range PRIMARY PRIMARY 4 530912 100.00 Using where; Using index
一共查询了:511856 + 19032 = 530888 行
概要描述:
id:选择标识符
select_type:表示查询的类型。
table:输出结果集的表
partitions:匹配的分区
type:表示表的连接类型
possible_keys:表示查询时,可能使用的索引
key:表示实际使用的索引
key_len:索引字段的长度
ref:列与索引的比较
rows:扫描出的行数(估算的行数)
filtered:按表条件过滤的行百分比
Extra:执行情况的描述和说明