【正文】
emp e,dept d WHERE = GROUP BY 。 、部門和工資 SELECT , FROM emp e,dept d WHERE =。 列出所有部門的人數(shù) SELECT deptno dno,COUNT(empno) cou FROM emp GROUP BY deptno。 把上表當(dāng)成臨時表:【由于 40部門沒有雇員,所以應(yīng)該使用 0表示】 SELECT d.*,NVL(,0) FROM dept d,(SELECT deptno dno,COUNT(empno) cou FROM emp GROUP BY deptno) ed WHERE =(+)。 4列出各種工作的最低工資以及從事此工作的雇員姓名: 按工作分組求出最低工資 SELECT MIN(sal) m FROM emp GROUP BY job。 子查詢 SELECT FROM emp e WHERE IN(SELECT MIN(sal) m FROM emp GROUP BY job)。 4列出各個部門的 MANAGER 的最低薪金: 求出各個部門 MANAGER的工資,按照部門分組 SELECT deptno,MIN(sal) FROM emp WHERE job=39。MANAGER39。 GROUP BY deptno。 4列出所有員工的年工資,按照年薪從低到高排序: 注意獎金,獎金要用 NVL函數(shù)處理 SELECT ename,(sal+NVL(m,0))*12 ine FROM emp ORDER BY ine 4查詢出某個員工的上級主管,并要求這些主管中的薪水超過 3000 SELECT DISTINCT m.* FROM emp e,emp m WHERE = AND 3000。 4求出部門名稱中帶有’ S‘字符的部門員工的工資合計,部門人數(shù) 查詢部門表中的部門名稱,使用模糊查詢,以確定部門編號 SELECT deptno FROM dept WHERE dname LIKE 39。%S%39。 再根據(jù)上面作為子查詢,求出工資合計和部門人數(shù) SELECT SUM(sal),COUNT(empno) FROM emp e WHERE IN (SELECT deptno FROM dept WHERE dname LIKE 39。%S%39。) GROUP BY deptno。 4給任職日期超過 10年的人加薪 10%; UPDATE emp SET sal=sal* WHERE MONTHS_BETWEEN(sysdate,hiredate)/1210。