oracle示例:列出平均工资大于2500的岗位。
SQL> select job,avg(sal)
2 from emp
3 having avg(sal) >2500
4 group by job;
执行语句,如果如下图:
having:在使用 group by 分组时,如有条件限制为 having,而不能使用 where。即在 group by 中所对应的的条件限制为 having。
上面的例子中数据库首先使用 group by进行 job分组,再使用 avg(sal)函数求出每个岗位的平均工资,最后执行 having进行限制。
意思即为: 先进行group by分组,再执行having。
SQL> select job,avg(sal)
2 from emp
3 having avg(sal) >2500
4 group by job;
执行语句,如果如下图:
having:在使用 group by 分组时,如有条件限制为 having,而不能使用 where。即在 group by 中所对应的的条件限制为 having。
上面的例子中数据库首先使用 group by进行 job分组,再使用 avg(sal)函数求出每个岗位的平均工资,最后执行 having进行限制。
意思即为: 先进行group by分组,再执行having。