用sql语句实现'查询各部门名称和该部门员工数'

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用sql语句实现'查询各部门名称和该部门员工数'相关的知识,希望对你有一定的参考价值。

用sql语句实现'查询各部门名称和该部门员工数'

具体语句如下:

结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

参考技术A select 部门名称,count(人员ID) as 人数 from 员工表 group by 部门名称

参考技术B SELECTDEPT.DNAME,EMP.ENAME,(EMP.SAL+NVL(EMP.COMM,0))ASSCFROMEMP,DEPT,(SELECTDEPT.DEPTNOASD,AVG(EMP.SAL+NVL(EMP.COMM,0))ESCFROMDEPT,EMPWHEREEMP.DEPTNO=DEPT.DEPTNOGROUPBYDEPT.DEPTNO)TWHEREEMP.DEPTNO=DEPT.DEPTNOANDEMP.DEPTNO=T.DAND(EMP.SAL+NVL(EMP.COMM,0))T.ESC;

查询各部门中高于部门平均工资的人员,人数及该部门的平均工资

先通过查询得到平均工资表,然后在联结查询平均工资表和员工表,Group by修饰count(*),Group by要在where子句之后,order by子句之前。

select a.*,avgsal,count(*) as number
from emp as a,(select deptno,avg(salary) as avgsal from emp group by deptno) as b
where a.deptno=b.deptno and a.salary>b.avgsal
group by a.deptno
order by a.deptno;

 

以上是关于用sql语句实现'查询各部门名称和该部门员工数'的主要内容,如果未能解决你的问题,请参考以下文章

办公室各部门的英文翻译名称

编写一个 PL/SQL 块,从 Employee 表中显示部门名称和该部门的总工资支出

关于学生,课程,选课三张表的sql查询

查找该部门教师的最高薪水

用SQL语句查询生日以及今日生日!!

oracle 用SQl语句截取最后一个“\”后面的内容