41、查询各职位的员工工资的最大值,最小值,平均值,总和
select job, max(sal),min(sal), avg(sal), sum(sal)
fromemp
groupby job;
42、选择具有各个job的员工人数(提示:对job进行分组)
select job, count(*)
fromemp
groupby job;
43、查询员工最高工资和最低工资的差距,列名为DIFFERENCE;
selectmax(sal)-min(sal) "DIFFERENCE"
fromemp;
44、查询各个管理者属下员工的最低工资,其中最低工资不能低于800,没有管理者的员工不计算在内
select mgr, min(sal)
from emp
where mgr is not null
group by mgr
having min(sal) >=800;
45、查询所有部门的部门名字dname,所在位置loc,员工数量和工资平均值;
select dept.dname,dept.loc, COUNT, AVG
from dept
join(
select deptno, count(*)as"COUNT", avg(sal) as "AVG"
from emp
group by deptno
)
using(deptno);
46、查询和scott相同部门的员工姓名ename和雇用日期hiredate
select ename, hiredate
from emp
where deptno = (select deptnofrom empwhere emp.ename = 'SCOTT');
47、查询工资比公司平均工资高的所有员工的员工号empno,姓名ename和工资sal。
select empno, ename, sal
from emp
where sal > (select avg(sal)from emp);
48、查询和姓名中包含字母u的员工在相同部门的员工的员工号empno和姓名ename
select empno, ename
from emp
where deptno in (select deptnofrom empwhere ename like '%U%');
49、查询在部门的loc为newYork的部门工作的员工的员工姓名ename,部门名称dname和岗位名称job
select e.ename, d.dname, e.job