1. 程式人生 > >基於oracle的scott使用者下emp表的練習(子查詢篇)

基於oracle的scott使用者下emp表的練習(子查詢篇)

select * from emp;
--1.查詢公司員工編號最小的員工姓名、工資和入職時間
select ename,sal,hiredate
from emp
where empno=(select min(empno) from emp);
--2.查詢和20號部門的員工入職年份和工作相同的員工姓名,工資和工作
select ename,sal,job
from emp
where (to_char(hiredate,'yyyy'),job)
in(select to_char(hiredate,'yyyy'),job from emp where deptno=20);
--3.查詢出公司所有是經理的員工姓名,工作,工資和部門編號;
select ename,job,sal,deptno from emp e where exists(select '1' from emp where mgr=e.empno); --4.查詢部門平均工資大於2000的部門名稱和平均工資。 select e.deptno,avg(sal) from emp e,dept d where e.deptno=d.deptno group by e.deptno having avg(sal)>2000; --5.查詢工資比自己經理高的員工姓名和工資,以及對應經理的姓名和工資 select e.ename,e.sal,m.ename,m.sal from
emp e,emp m where e.mgr=m.empno and e.sal>m.sal; --6.查詢比本部門平均工資低的員工姓名、薪水和部門的平均工資 select e.ename,e.sal,d.avgsal from emp e,(select deptno,avg(sal) avgsal from emp group by deptno) d where e.deptno=d.deptno and e.sal<d.avgsal;