1.使用limit时需要注意,查询数据量比较大时,效率会降低
MySQL 并不是跳过 offset 行,而是取 offset+N 行,然后返回放弃前 offset 行,返回N 行,那当 offset 特别大的时候,效率就非常的低下,要么控制返回的总页数,要么对超过特定阈值的页数进行 SQL 改写。
2.索引相关
https://www.cnblogs.com/itdragon/p/8146439.html
3.不走索引的常见情况
- 左匹配
- 字段上使用函数
- 使用or作为条件进行查询
- 类型不一致(如果是字符串必须加单引号)
- 使用!=或>进行筛选
- ordery by
- 组合索引为左前匹配
如果组合索引为:(name,email)
name and email -- 使用索引
name -- 使用索引
email -- 不使用索引