group by与 order by 的区别
Group by 根据by指定的规则对数据进行分组,经常和聚合函数一起用
Select 类别,sum(数量) from 表名 group by 类别;
Having 只能与 group by连用 跟在group by 后面,语法与where语法类似,都是用来筛选
Having 和where 比较
相同:设置查询条件,用来筛选结果
不同:Having可以包含聚合函数,where不可以
在分组操作中,where子句搜索条件在进行分组操作之前应用,having搜索条件在进行分组操作之后应用。
Group by 与 order by 组合
通常没有太多的关系,但是他们常常组合在一起用,完成分组加排序的功能
几个规则:
Order by 放在前面,表示先排序在分组
Group by 放在前面 表示先分组后排序
Group by 中的列,必须在order by 中有