mysql group by 和 having 用法
1.先看表2.现在需要查询各个部门的薪水总和。有个条件是,薪水小于等于150的员工不参与统计直接上结果select p.dept_id,sum(p.salary) sal frompersonal p where p.salary >150 GROUP BY p.dept_id结果:3.上面的sql中是先从表中去掉salary小于等于150的数据,再使用dept_id分组求和。所以 wher
·
1.先看表
2.现在需要查询各个部门的薪水总和。有个条件是,薪水小于等于150的员工不参与统计
直接上结果
select p.dept_id,sum(p.salary) sal from
personal p where p.salary >150 GROUP BY p.dept_id
结果:
3.上面的sql中是先从表中去掉salary小于等于150的数据,再使用dept_id分组求和。
所以 where条件是在group by之前执行
4.现在增加一个条件: 薪水之和大于400的部门。(条件还是小于等于150的员工不参与统计)
直接上答案
select p.dept_id,sum(p.salary) sal from
personal p where p.salary >150 GROUP BY p.dept_id
HAVING sum(p.salary)>400
这样就把id为1的部门去掉了
显然having是在分组计算完成之后再按照条件 筛选,即在group by 之后执行
更多推荐
已为社区贡献2条内容
所有评论(0)