- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用 scott用户自带的四张表完成如下作业:
列出至少有一个员工的所有部门
select b.deptno,b.dname from emp a,dept b where a.deptno=b.deptno group by b.deptno,b.dname having count(*)=1;
列出薪金比SMITH 高的所有员工
select * from emp where sal(select sal from emp where ename=SMITH);
列出所有员工的姓名及其直接上级领导的姓名
select a.ename,b.ename leader from emp a,emp b where a.mgr=b.empno;
列出受雇日期早于其直接上级的所有员工的编号,姓名,部门名称
select a.empno,a.ename,a.hiredate,c.dname from emp a,emp b,dept c where a.mgr=b.empno and a.deptno=c.deptno and a.hiredateb.hiredate;
列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门
select b.dname,a.* from emp a,dept b where a.deptno(+)=b.deptno ;
列出所有CLERK( 办事员)的姓名,及其部门名称,部门人数
select aa.ename,aa.job,bb.dname,
(select count(a.deptno) from emp a,dept b where a.deptno=b.deptno and b.dname=bb.dname group by a.deptno )
from emp aa,dept bb
where aa.deptno(+)=bb.deptno and aa.job=CLERK;
列出最低薪金大于 1500 的各种工作及从事此工作的全部雇员人数
select a.job,min(sal),count(ename) from emp a,dept b where a.deptno=b.deptno having min(sal)1500 group by a.job;
列出在部门SALES( 销售部)工作的员工的姓名,假定不知道销售部的部门编号。
select ename from emp a,dept b where a.deptno=b.deptno and dname=SALES;
列出薪金高于公司平均薪金的所有员工,所在部门,上级领导,公司的等级工资
select a.ename,dname,aa.ename Leader ,grade from emp a,dept b,emp aa,salgrade s
where a.deptno=b.deptno and a.mgr=aa.empno and a.sal(select avg(sal) from emp)
and a.sal between losal and hisal;
列出与SCOTT 从事相同工作的所有员工的编号,姓名,职位及其部门名称
select empno,ename,job,dname from emp a,dept b where a.deptno=b.deptno and job=(select job from emp where ename=SCOTT);
列出薪金等于部门 30 中员工的薪金的所有员工的姓名和薪金。
select ename,sal from emp where sal=any(select sal from emp where deptno=30);
列出薪金高于在部门 30 工作的所有员工的薪金的员工姓名、薪金和部门名称
select ename,sal,dname from emp a,dept b where a.deptno=b.deptno and salall(select sal from emp where deptno=30);
列出在每个部门工作的员工数量、平均工资和平均服务期限
select dname,count(ename),avg(sal),avg(sysdate - a.hiredate) from emp a,dept b where a.deptno(+)=b.deptno group by a.deptno,dname;
列出所有员工的姓名、部门名称和工资
select ename,dname,sal from emp a,dept b where a.deptno=b.deptno;
列出所有部门的详细信息和部门人数
select b.de
文档评论(0)