-- 1、列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金、部门名称、部门人数。SELECT e1.ENAME, e1.SAL, d.DNAME, e2.DEPTNUM
FROM emp e1
JOIN(SELECT DEPTNO,COUNT(*) DEPTNUM FROM emp GROUPBY DEPTNO) e2
ON e1.DEPTNO = e2.DEPTNO
LEFTJOIN dept d
ON e1.DEPTNO = d.DEPTNO
WHERE e1.SAL >(SELECTMAX(SAL)FROM emp WHERE DEPTNO =30);-- ALL的使用SELECT e1.ENAME, e1.SAL, d.DNAME, e2.DEPTNUM
FROM emp e1
JOIN(SELECT DEPTNO,COUNT(*) DEPTNUM FROM emp GROUPBY DEPTNO) e2
ON e1.DEPTNO = e2.DEPTNO
LEFTJOIN dept d
ON e1.DEPTNO = d.DEPTNO
WHERE e1.SAL >ALL(SELECT SAL FROM emp WHERE DEPTNO =30);-- 2、列出与“SCOTT”从事相同工作的所有员工及部门名称、部门人数、领导姓名。SELECT e1.ENAME, e1.JOB, d.DNAME, e1.DEPTNO, e2.DEPTNUM, e1.MGR,
scott表查询练习-复杂查询-- 1、列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金、部门名称、部门人数。SELECT e1.ENAME, e1.SAL, d.DNAME, e2.DEPTNUMFROM emp e1 JOIN (SELECT DEPTNO, COUNT(*) DEPTNUM FROM emp GROUP BY DEPTNO) e2 ON e1.DEPTNO = e2.DEPTNO LEFT JOIN dept d ON e1.DEPTNO = d.D