a) 查询从事同一种工作但不属于同一部门的员工信息:

SELECT e1.empno, e1.ename, e1.job, e1.deptno FROM emp e1, emp e2 WHERE e1.job = e2.job AND e1.deptno <> e2.deptno;

b) 查询各个部门的详细信息以及部门人数、部门平均工资:

SELECT d.deptno, d.dname, COUNT(e.empno) AS num_employees, AVG(e.sal) AS avg_salary FROM dept d LEFT JOIN emp e ON d.deptno = e.deptno GROUP BY d.deptno, d.dname;

a) 查询10号部门员工以及领导的信息:

SELECT e1.empno, e1.ename, e1.job, e1.mgr FROM emp e1 WHERE e1.deptno = 10;

b) 查询工资为某个部门平均工资的员工信息:

SELECT e.empno, e.ename, e.job, e.sal FROM emp e WHERE e.sal = (SELECT AVG(sal) FROM emp WHERE deptno = e.deptno);

c) 查询工资高于本部门平均工资的员工的信息及其部门的平均工资:

SELECT e.empno, e.ename, e.job, e.sal, AVG(e2.sal) AS avg_dept_salary FROM emp e, emp e2 WHERE e.sal > (SELECT AVG(sal) FROM emp WHERE deptno = e.deptno) AND e.deptno = e2.deptno GROUP BY e.empno, e.ename, e.job, e.sal

已知Oracle的Scott用户中提供了三个测试数据库表名称分别为deptemp和salgrade。使用SQL语言完成以下操作2试用SQL语言完成下列查询多表查询:每题2分共4分a查询从事同一种工作但不属于同一部门的员工信息b查询各个部门的详细信息以及部门人数、部门平均工资3试用SQL语言完成下列查询嵌套子查询:每题2分共6分a查询10号部门员工以及领导的信息b查询工资为某个部门平均工资的员工信息

原文地址: http://www.cveoy.top/t/topic/in2K 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录