mysql进阶-SQL查询优化建议
2020-12-01 本文已影响0人
木语沉心
一 建表时需要考虑的优化策略
- ENUM (单选框): 恰当的使用ENUM字段类型
- 保证列值是 NOT NULL 的:NULL 增加索引复杂度
- 选择适当的索引字段,避免过度索引: 单表不超过5个索引
二 查询时需要考虑的优化策略
-
尽量避免在 SQL 中出现函数
- 函数计算会导致 SQL 执行速度变慢,增加访问延迟
- 函数计算会消耗更多的 MySQL 资源(CPU 和内存)
-
慎用 IN 和 NOT IN:改用BETWEEN AND
-
使用功能强大的 LIMIT
-
避免在 WHERE 子句中对字段进行操作 (运算或者函数等):优化器会过滤
-
尽量避免在 WHERE 子句中使用不等于 !=
-
避免出现大事务
-
合理的分页
-
避免模糊查询 :特别是前缀模糊