资源描述:
《ORACLE数据库习题(有答案).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、--1.列出至少有一个雇员的所有部门。SELECT*FROMDEPTWHEREDEPTNOIN(SELECTDISTINCTDEPTNOFROMEMP);--2.列出薪金比“SMITH”多的所有雇员。SELECT*FROMEMPWHERESAL>(SELECTSALFROMEMPWHEREENAME='SMITH');--3.列出所有雇员的姓名及其上级的姓名。SELECTygb.enameASempName,sjb.enameASmgrNameFROMempygb,empsjbWHEREygb.mgr=sjb.empno;--4
2、.列出入职日期早于其直接上级的所有雇员。SELECT*FROMempygbWHEREhiredate<(SELECThiredateFROMempsjbWHEREsjb.empno=ygb.mgr);--5.列出所有部门的名称和这些部门的雇员编号及姓名(没有雇员的部门包含在内)SELECTdname,enameFROMdeptaLEFTJOINempbONa.deptno=b.deptno;--6.列出所有JOB为“CLERK”(办事员)的员工姓名及其部门名称SELECTename,dnameFROMdepta,empbWHER
3、Ea.deptno=b.deptnoANDjob='CLERK';--7.列出各种类型的最低薪金,并使最低薪金大于。SELECTjob,MIN(sal)FROMempGROUPBYjobHAVINGMIN(sal)>1500;--8.列出从事“SALES”(销售)工作的雇员的姓名,假定不知道销售部的部门编号。SELECTenameFROMempWHEREdeptno=(SELECTdeptnoFROMdeptWHEREdname='SALES');--9.列出薪金高于公司平均水平的所有雇员。SELECT*FROMEMPWHERE
4、SAL>(SELECTAVG(SAL)FROMEMP);--10.列出与“SCOTT”从事相同工作的所有雇员。SELECT*FROMEMPWHEREJOB=(SELECTJOBFROMEMPWHEREENAME='SCOTT')ANDENAME<>'SCOTT';--11.列出薪金等于部门中任何一个雇员薪金的员工姓名和薪金SELECTENAME,SALFROMEMPWHERESALIN(SELECTSALFROMEMPWHEREDEPTNO=30);SELECTENAME,SALFROMEMPWHERESAL=ANY(SELEC
5、TSALFROMEMPWHEREDEPTNO=30);--12.列出薪金高于部门中所有雇员薪金的员工姓名和薪金SELECT*FROMEMPWHERESAL>ALL(SELECTSALFROMEMPWHEREDEPTNO=30);--13.列出所有部门的部门名称、地点以及该部门中雇员的数量SELECTDNAME,DEPTNO,LOC,(SELECTCOUNT(*)FROMEMPEWHEREE.DEPTNO=DEPT.DEPTNO)ASTOTALFROMDEPT;--14.列出各种类别工作的最低工资SELECTjob,MIN(sal
6、)FROMempGROUPBYjob;--15.列出各个部门的MANAGER(经理)的最低薪金。SELECTMIN(sal)FROMempWHEREjob='MANAGER'GROUPBYDEPTNO;--1.查询所有部门员工的编号、姓名、月薪及奖金。selectempno,ename,sal,commfromempwheredeptno=10;--2.查询员工WHITE的员工编号。selectempnofromempwhereename='WHITE';--3.查询所有员工的编号及收入。(提示:收入=月薪+奖金)selecte
7、mpno编号,sal+nvl(comm,0)as收入fromemp;--4.查询所有员工的编号、姓名、工种及其工龄,按工龄降序排序,工龄相同时按编号升序排序。Selectempno,ename,job,trunc(months_between(sysdate,hiredate)/12)工龄fromemporderby工龄desc,empnoasc;--5.统计各部门的员工人数及工种类型数。selectdeptno,count(*)人数,count(distinctjob)工种类型数fromempgroupbydeptno;--6
8、.查询部门人数多于人的部门编号。selectdeptno,count(*)fromempgroupbydeptnohavingcount(*)>3;--7.统计各部门各种工作类别的最低月薪,显示最低薪金大于的记录。selectdeptno,job,min(sal