--查询出有员工的部门信息
select * from dept where deptno in (select distinct(deptno) from emp);
select * from dept t1 where exists (select deptno from emp t2 where t1.deptno=t2.deptno);
--查询出没有员工的部门信息
select * from dept where deptno not in (select distinct(nvl(deptno,0)) from emp)
--查询出每个部门的平均工资 部门名称
select dept.dname,t.部门平均工资 from dept join (select deptno,avg(nvl(sal,0)) 部门平均工资 from emp group by deptno) t on dept.deptno=t.deptno
--查询出平均工资最高的部门名称和编号
--显示部门名称和编号
--select t1.dname,t1.deptno from dept t1
--各个部门的平均工资
--select deptno,avg(sal) 平均工资 from emp group by deptno
--各个部门平均工资最高多少
--select max(temp.部门平均工资) from (select avg(sal) 部门平均工资 from emp group by deptno) temp;
select t1.dname,t1.deptno,temp1.平均工资 from dept t1 join (select deptno,avg(sal) 平均工资 from emp group by deptno having avg(sal)=( select max(temp.部门平均工资) from (select avg(sal) 部门平均工资 from emp group by deptno) temp)
) temp1 on t1.deptno=temp1.deptno ;
本文出自 “Java大白的战地” 博客,请务必保留此出处http://8023java.blog.51cto.com/10117207/1739156
原文:http://8023java.blog.51cto.com/10117207/1739156