mysql_03
Posted 那些年了
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql_03相关的知识,希望对你有一定的参考价值。
四、分组查询:
1、关键字的书写顺序和执行顺序
Select…from…where…group by…order by…
执行顺序:from->where->group by->select->order by
2、按工作岗位分组然后求工资和
SELECT job,sal FROM emp GROUP BY job;
3、找出每个部门中的最高工资
SELECT deptno, MAX(sal) FROM emp GROUP BYdeptno;
4、找出每个部门不同工作岗位中的最高工资
SELECT DEPTNO,JOB,MAX(sal) FROM emp GROUPBY DEPTNO,Job;
5、使用having可以对分完组的数据进一步过滤,having不能单独使用,必须和group by联合使用。能用where实现的就不用having,where的效率更高。
找出每个部门中的最高工资,并且要求最高工资大于3000。
SELECT DEPTNO,MAX(sal) FROM emp GROUP BYDEPTNO HAVING MAX(sal)>3000;
SELECT DEPTNO,MAX(sal) FROM emp WHERE SAL>3000 GROUP BY DEPTNO;
6、找出每个部门平均工资高于2500的
SELECT deptno,AVG(sal) FROM emp GROUP BYDEPTNO having AVG(sal)>2500;
这个要求用where不好实现,用having
7、找出每个岗位的平均工资,要求平均工资大于1500,除’manager’岗位之外,按照平均工资降序排序。
SELECT job,avg(sal) as avgsal FROM empWHERE JOB <>'manager' GROUP BY job HAVING avg(sal)>1500 ORDER BYavgsal DESC;
以上是关于mysql_03的主要内容,如果未能解决你的问题,请参考以下文章
[AndroidStudio]_[初级]_[配置自动完成的代码片段]