索引场景
-
对于查询频率高的字段创建索引;
-
对排序、分组、联合查询频率高的字段创建索引;
-
如果需要将多个列设置为索引时,可以采用多列索引
选择唯一性索引(名字不行)尽量使用数据量少的索引,删除不再使用或者很少使用的索引,数目不宜太多
索引失效
1.索引列出现函数参数或者表达式
解决方案:事先计算好表达式的值
2.使用左模糊
解决方案:尽量避免
3.使用OR查询的部分字段没有索引
explain
select *
from employees
where first_name = 'Georgi'
or last_name = 'Georgi';
or的字段添加索引
4.没加单引号
SELECT
sum(s.score>=60)/count(s.id) as percent,
subject_id
FROM score s GROUP BY s.subject_id;