一.实验目的
掌握Oracle中的数据查询与操作语句的编写
二.实验内容
根据scott模式下的emp和dept表,完成以下操作。
查询10号部门的所有员工信息。
查询工种为clerk的员工的员工号,员工名和部门号。
查询员工的姓名和入职日期,按入职日期先后排序。
查询至少有两个员工的部门信息。
查询15号部门中工资排名前8的员工信息。
查询部门人数大于10的部门的员工信息。
向emp表中插入一条记录,员工名为fan,员工号为8000,其他信息与smith员工的信息相同。
三.实验过程
1.查询10号部门的所有员工信息。
SELECT * from emp where deptno = 10;
2.查询工种为clerk的员工的员工号,员工名和部门号。
Select EMPNO,ENAME, DEPTNO from emp where job = ‘CLERK’;
3.查询员工的姓名和入职日期,按入职日期先后排序。
Select ENAME,HIREDATE from emp order by HIREDATE asc;
4.查询至少有两个员工的部门信息。
Select * from emp where deptno in(select deptno from emp group by deptno having count(deptno)>=2);
5.查询15号部门中工资排名前8的员工信息。(这里没有第15行)
select * from (select row_number() over(partition by deptno order by sql desc) rk,emp* from emp) where rk <= 8 and deptno =10;
6.查询部门人数大于10的部门的员工信息。(我的emp表没有大于10的人)
Select EMPNO,ENAME, DEPTNO from emp where deptno in(select deptno from emp group by deptno having count(deptno)>=2)order by DEPTNO asc ;
7.向emp表中插入一条记录,员工名为fan,员工号为8000,其他信息与smith员工的信息相同。
Insert into emp select 8000,'fan',job,mgr,hiredate,sal,comm,deptno from emp where ename = 'SMITH';