EMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO) DEPT(DEPTNO,DNAME,LOC)(急急急)
1、查询每个职员的姓名、工种、入社日期,工资和年工资。2、查找部门平均工资在2000元以上的部门号和部门名称,按平均工资的降序排列。3、查找营业部(SALES)比研究部(...
1、查询每个职员的姓名、工种、入社日期,工资和年工资。
2、查找部门平均工资在2000元以上的部门号和部门名称,按平均工资的降序排列。
3、查找营业部(SALES)比研究部(RESEARCH)平均工资都高的职员的情况。(要求使用子查询来完成)
4、在EMP表的MGR属性列上建一个名为mgr_bit的位图索引。
5、查询各个部门的最高工资的职员情况。 展开
2、查找部门平均工资在2000元以上的部门号和部门名称,按平均工资的降序排列。
3、查找营业部(SALES)比研究部(RESEARCH)平均工资都高的职员的情况。(要求使用子查询来完成)
4、在EMP表的MGR属性列上建一个名为mgr_bit的位图索引。
5、查询各个部门的最高工资的职员情况。 展开
1个回答
展开全部
1、SELECT e.ename,e.job,e.hiredate,e.sal,e.sal*12 FROM emp e ;
2、SELECT v.deptno,v.dname FROM (SELECT AVG(e.sal) avgsal,d.deptno,
d.dname FROM emp e LEFT JOIN dept d ON e.deptno=d.deptno
GROUP BY e.deptno,d.deptno,d.dname)v
WHERE v.avgsal>2000;
3、SELECT e.* FROM emp e LEFT JOIN dept d ON e.deptno=d.deptno
WHERE d.dname='SALES'
AND e.sal >(SELECT DISTINCT AVG(e.sal) OVER (PARTITION BY e.deptno) FROM emp e LEFT JOIN dept d ON e.deptno=d.deptno
WHERE d.dname='RESEARCH');
4、create bitmap index mgr_bit on emp(mgr);
5、SELECT * FROM emp
WHERE (sal,deptno) IN (SELECT MAX(e.sal),e.deptno
FROM emp e GROUP BY e.deptno);
2、SELECT v.deptno,v.dname FROM (SELECT AVG(e.sal) avgsal,d.deptno,
d.dname FROM emp e LEFT JOIN dept d ON e.deptno=d.deptno
GROUP BY e.deptno,d.deptno,d.dname)v
WHERE v.avgsal>2000;
3、SELECT e.* FROM emp e LEFT JOIN dept d ON e.deptno=d.deptno
WHERE d.dname='SALES'
AND e.sal >(SELECT DISTINCT AVG(e.sal) OVER (PARTITION BY e.deptno) FROM emp e LEFT JOIN dept d ON e.deptno=d.deptno
WHERE d.dname='RESEARCH');
4、create bitmap index mgr_bit on emp(mgr);
5、SELECT * FROM emp
WHERE (sal,deptno) IN (SELECT MAX(e.sal),e.deptno
FROM emp e GROUP BY e.deptno);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询