oracle第二次实验,ORACLE 实验 20100229(第二次)实验成果

本文介绍了如何使用SQL子查询来获取特定部门员工信息,包括显示姓名中含T的员工所在部门的所有员工,以及工资高于部门内平均工资的员工。同时,展示了如何找出薪资超过所有CLERK员工的其他雇员。此外,还提供了几个思考练习题,涉及部门内员工筛选、平均工资比较和地理位置查询等操作。
摘要由CSDN通过智能技术生成

实验6 子查询

实验步骤

(1)编写一查询,显示姓名中含有字符T的雇员所在的部门内的所有雇员的编号和姓名,并将该查询保存成文件p6q1.sql。

SELECT empno, ename FROM emp

WHERE deptno IN (SELECT deptno FROM emp WHERE ename LIKE '%T%');

(2)修改文件p6q1.sql,显示工资高于平均工资水平并且与姓名中含有T的雇员在同一部门工作的雇员的编号、姓名及工资,将修改后的结果另存为p6q2.sql,并返回查询结果。

SELECT empno, ename, sal FROM emp

WHERE deptno IN (SELECT deptno FROM emp WHERE ename LIKE '%T%')

AND sal>(SELECT A VG(sal) FROM emp);

(3)创建一查询,显示能获得比所有从事CLERK工作的雇员的个人工资更高的其他雇员的姓名、工作及工资,输出按工资降序排列,并将该查询保存成文件p6q3.sql。

SELECT ename, job, sal FROM emp

WHERE sal> ALL(SELECT sal FROM emp where job='CLERK')

ORDER BY sal DESC;

思考练习题

1.编写一查询,显示与Blake在同一部门工作的雇员的姓名和受雇日期,但是Blake 不包含在结果内。

SELECT ename, hiredate FROM emp

WHERE deptno=(SELECT deptno FROM emp WHERE ename='BLAKE')

AND ename !='BLAKE';

2.创建一查询,显示工资大于平均工资水平的雇员的编号及姓名,输出结果按工资降序排列。

SELECT empno, ename FROM emp

WHERE sal>( SELECT A VG(sal) FROM emp) ORDER BY sal DESC;

3.显示位置在Dallas的部门内的雇员的姓名、编号及工作。

SELECT ename, empno, job FROM emp

WHERE deptno=(SELECT deptno FROM dept WHERE loc='DALLAS');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值