Oracle表的常用查询实验(一)
练习1、请查询表DEPT中所有部门的情况。select * from dept;练习2、查询表DEPT中的部门号、部门名称两个字段的所有信息。select deptno,dname from dept;练习3、请从表EMP中查询10号部门工作的雇员姓名和工资。select ename,sal from emp where deptno=10;练习4、请从表EMP中查找工种是职员CLERK或经理MANAGER的雇员姓名、工资。select ename,sal from emp where job='CLERK' or job='MANAGER';练习5、请在EMP表中查找部门号在10-30之间的雇员的姓名、部门号、工资、工作。select ename,deptno,sal,job from emp where deptno between 10 and 30;练习6、请从表EMP中查找姓名以J开头所有雇员的姓名、工资、职位。select ename,sal,job from emp where ename like 'J%';练习7、请从表EMP中查找工资低于2000的雇员的姓名、工作、工资,并按工资降序排列。select ename,job,sal from emp where sal<=2000 order by sal desc;练习8、请从表中查询工作是CLERK的所有人的姓名、工资、部门号、部门名称以及部门地址的信息。select ename,sal,emp.deptno,dname,loc from emp,dept where emp.deptno=dept.deptno and job=’CLERK’;练习9、查询表EMP中所有的工资大于等于2000的雇员姓名和他的经理的名字。select a.ename,b.ename from emp a,emp b where a.mgr=b.empno(+) and a.sal>=2000;练习10、在表EMP中查询所有工资高于JONES的所有雇员姓名、工作和工资。select ename,job,sal from emp where sal>(select sal from emp where ename=’JONES’);练习11、列出没有对应部门表信息的所有雇员的姓名、工作以及部门号。select ename,job,deptno from emp where deptno not in (select deptno from dept);练习12、查找工资在1000~3000之间的雇员所在部门的所有人员信息select * from emp where deptno in (select distinct deptno from emp where sal between 1000 and 3000);练习13、雇员中谁的工资最高。select ename from emp where sal=(select max(sal) from emp);select ename from (select * from emp oracle账号order by sal desc) where rownum<=1;练习14、雇员中谁的工资第二高(考虑并列第一的情况,如何处理)。select ename from (select ename ,sal from (select * from emp order by sal desc) where rownum<=2 order by sal) where rownum<=1;