索引失效的因素:
1.存储引擎不能使用索引中范围条件右边的列
2.!= 或<> 会全表扫描
3.is null is not null 会索引失效
4.like以通配符开头% 会索引失效
5.or 会索引失效
6.like %放在第一位 会索引失效
1. id(表的读取顺序)
查询顺序 t3--derived2--t2
2. select_type(读数据的操作类型)
3.type(访问类型排序)
如果数据量达到百万级,还是ALL,则需要优化
一般来说,得保证查询至少range级别,最好能达到ref
4.key相关
possible_keys(可能会用到得索引)
key(实际用到的索引)
key_len(索引使用的字节数,越小越好)
5.rows(优化器扫描了多少行)
6.Extra
最好出现Using Index
如果出现Using temporary 或 Using filesort ,需要优化
小结:
left join 给右表建索引,right join给左表建索引
用小结果集驱动大结果集