本文将简单介绍关键字group by、having
一、group by
group by 后面跟列名
用于根据一个或多个列 对返回结果进行分组
下面举例说明:
//找出各个院系的平均工资
select dept_name, AVG(salary)
from instructor
group by dept_name;
需要注意的是
在使用group by的语句中
select子句中的列名必须为 被分组的列 或者 列函数
否则会报错
二、having
having 后面跟一个条件从句
需要跟在group by子句后
用于在分组查询的基础上进一步筛选数据
下面举例说明:
//找出平均工资大于50000的院系及其平均工资
select dept_name, AVG(salary)
from instructor
group by dept_name
having AVG(salary)>50000;
最后,不妨简单总结一下
在编写mysql语句时,几种常见类型的子句需要遵循的顺序:
select from, where, group by, having, order by, limit