1,尽量少使用inner join查询
2,尽量少使用临时表
3,少用子查询
4,通配符出现在首位,无法使用索引
5,exists替代in
索引什么时候失效?
1.有or必全有索引;(要想使用or,又想让索引生效,只能将or条件中的每个列都加上索引)
2.复合索引未用左列字段;
3.like以%开头;(以%结尾可以用)
4.需要类型转换;
5.where中索引列有运算;
6.where中索引列使用了函数;
7.如果mysql觉得全表扫描更快时(数据少);
8, where 子句里对索引列使用不等于(<>),使用索引效果一般