开发者学堂课程【MySQL 高级应用 - 索引和锁:索引优化4】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/598/detail/8614
索引优化4
一、覆盖索引
5.尽量使用覆盖索引(只访问索引的查询(索引列和查询列一致)),减少 select *(按需取数据,用多少取多少,要尽量少用 * )。写 sql 的原则是按需取数据,用多少取多少,尽量和索引重合
此时输入:
mysql>desc staffs;
5 rows in set (0.00 sec)
此表有四个子对,继续:
mysql> EXPLAIN SELECT * FROM staffs WHERE NAME ='July' AND age=25 AND pos='manager'
;
如下图可以看到 Extra 是 Using where ,意思为去表里搜索,我们继续:
mysql> EXPLAIN SELECT name
,age,pos FROM staffs WHERE NAME ='July' AND age=25 AND pos='manager';
此时 Extra 就好很多,这时我们的索引列和查询是列一致,所以结果就会好很多,我们索引时要少用 * ,使用覆盖索引,我们得到的结果会更好。