Mysql数据库group by原理详解

目录
  • 引言
  • 1. 使用group by的简单例子
  • 2. group by 原理分析
    • 2.1 explain 分析
    • 2.2 group by 的简单执行流程
  • 3. where 和 having的区别
    • 3.1 group by + where 的执行流程
    • 3.2 group by + having 的执行
    • 3.3 同时有where、group by 、having的执行顺序
    • 3.4 where + having 区别总结
  • 4. 使用 group by 注意的问题
    • 4.1 group by一定要配合聚合函数使用嘛?
    • 4.2 group by 后面跟的字段一定要出现在select中嘛。
    • 4.3 group by导致的慢sql问题
  • 5. group by的一些优化方案
    • 5.1 group by 后面的字段加索引
    • 5.2 order by null 不用排序
    • 5.3 尽量只使用内存临时表
    • 5.4 使用SQL_BIG_RESULT优化
  • 6. 一个生产慢SQL如何优化