mysql进阶-SQL查询优化建议

一 建表时需要考虑的优化策略

  • ENUM (单选框): 恰当的使用ENUM字段类型
  • 保证列值是 NOT NULL 的:NULL 增加索引复杂度
  • 选择适当的索引字段,避免过度索引: 单表不超过5个索引

二 查询时需要考虑的优化策略

  • 尽量避免在 SQL 中出现函数

    1. 函数计算会导致 SQL 执行速度变慢,增加访问延迟
    2. 函数计算会消耗更多的 MySQL 资源(CPU 和内存)
  • 慎用 IN 和 NOT IN:改用BETWEEN AND

  • 使用功能强大的 LIMIT

  • 避免在 WHERE 子句中对字段进行操作 (运算或者函数等):优化器会过滤

  • 尽量避免在 WHERE 子句中使用不等于 !=

  • 避免出现大事务

  • 合理的分页

  • 避免模糊查询 :特别是前缀模糊

推荐阅读更多精彩内容