Académique Documents
Professionnel Documents
Culture Documents
select * from emp a inner join dept b on a.deptno=b.deptno where empno in (select mgr from emp);
--7
--8
--9
-10
Select
mgr,empno,empname,job,hiredate,to_char(trunc(months_between(sysdate,hiredate)/12))||'years'||
to_char(mod(trunc(months_between(sysdate,hiredate)),12))||'months'||to_char(trunc(sysdate)-
add_months(hiredate,trunc(months_between(sysdate,hiredate))))||'days' "Experience" from emp
where mgr=7698;
--11
select * from emp a inner join dept b on a.deptno=b.deptno where empno in (select mgr from emp) and
comm>sal;
--12
select * from emp a inner join dept b on a.deptno=b.deptno WHERE HIREDATE>'30-JUN-81' ORDER BY
JOB ASC;
--13
select empno,empname,to_char(trunc(months_between(sysdate,hiredate)/12))||'years'||
to_char(mod(trunc(months_between(sysdate,hiredate)),12))||'months'||to_char(trunc(sysdate)-
add_months(hiredate,trunc(months_between(sysdate,hiredate))))||'days' "Experience" from emp
where (sal*12)/365>100;
--14
select * from emp a inner join dept b on a.deptno=b.deptno WHERE JOB IN ('CLERK','ANALYST') ORDER
BY JOB DESC;
--15
select * from emp a inner join dept b on a.deptno=b.deptno WHERE HIREDATE IN ('01-MAY-81','03-DEC-
81','17-DEC-81','19-JAN-80') ORDER BY HIREDATE DESC;
--16
select * from emp a inner join dept b on a.deptno=b.deptno WHERE A.DEPTNO IN ('10','20');
--17
select * from emp a inner join dept b on a.deptno=b.deptno WHERE HIREDATE BETWEEN '01-JAN-81'
AND '31-DEC-81';
--18
select * from emp a inner join dept b on a.deptno=b.deptno WHERE HIREDATE BETWEEN '01-AUG-80'
AND '31-AUG-80';
--19
--20
--21
select * from emp a inner join dept b on a.deptno=b.deptno where length(empname)=5 and
substr(empname,1,1)='S';
--22
select * from emp a inner join dept b on a.deptno=b.deptno where length(empname)=4 and
substr(empname,3,1)='R';
--23
select * from emp a inner join dept b on a.deptno=b.deptno where length(empname)=5 and
substr(empname,1,1)='S' and substr(empname,5,1)='H';
--24
--25
--26
select * from emp a inner join dept b on a.deptno=b.deptno where LENGTH(SAL)=4 AND
substr(SAL,04,01)=0;
--27
select * from emp a inner join dept b on a.deptno=b.deptno where EMPNAME LIKE '%LL%';
--28
select * from emp a inner join dept b on a.deptno=b.deptno WHERE HIREDATE BETWEEN '01-JAN-80'
AND '31-DEC-80';
--29
--30
select * from emp a inner join dept b on a.deptno=b.deptno WHERE JOB NOT IN ('PRESIDENT','MGR')
ORDER BY SAL ASC;
--31
select * from emp a inner join dept b on a.deptno=b.deptno WHERE HIREDATE NOT BETWEEN '01-JAN-
81' AND '31-DEC-81';
--32
--33
select * from emp a inner join dept b on a.deptno=b.deptno WHERE MGR IS NOT NULL;
--34
--35
select * from emp a inner join dept b on a.deptno=b.deptno where JOB='CLERK' AND A.DEPTNO=20;
--36
select * from emp a inner join dept b on a.deptno=b.deptno where A.DEPTNO IN (10,30) AND HIREDATE
BETWEEN '01-JAN-1981' AND '31-DEC-1981';
--37
--38
--39
--40
select * from emp a inner join dept b on a.deptno=b.deptno where COMM IS NULL AND
(substr(to_char(SYSDATE,'DD-MON-YYYY HH12:MI:SS am'),08,04)-substr(to_char(HIREDATE,'DD-MON-
YYYY HH12:MI:SS am'),08,04))>7 AND EMPNO IN
--41
--42
-43
--44
--45
--46
--47
--48
select * from emp where sal>(select sal from emp where empname='BLAKE');
--49
select * from emp where job in (select job from emp where empname='ALLEN');
--50
select * from emp where HIREDATE<(select HIREDATE from emp where empname='KING');
--51
SELECT B.EMPNO,B.EMPNAME,B.HIREDATE,A.EMPNAME"MANAGER",A.HIREDATE"MGR HIREDATE"
FROM EMP A INNER JOIN EMP B ON A.EMPNO=B.MGR WHERE B.HIREDATE<A.HIREDATE;
--52
SELECT * FROM EMP WHERE DEPTNO=20 AND JOB IN (SELECT JOB FROM EMP WHERE DEPTNO=10);
--53
SELECT * FROM EMP WHERE SAL IN(SELECT SAL FROM EMP WHERE EMPNAME='FORD' OR
EMPNAME='SMITH');ORDER BY SAL DESC;
--54
SELECT * FROM EMP WHERE SAL>(SELECT SAL FROM EMP WHERE EMPNAME='ALLEN') OR JOB=(SELECT
JOB FROM EMP WHERE EMPNAME='MILLER');
--55
select * from emp where sal>(select sum(sal) from emp EE inner join dept DD on DD.deptno=EE.deptno
where dname='SALES');
--56
select * from emp EE inner join dept DD on DD.deptno=EE.deptno where loc in ('CHICAGO','BOSTON')
and hiredate<(select hiredate from emp where empname='BLAKE');
--57
--58
select * from emp where job in (select job from emp where empname IN ('ALLEN',’SMITH’);
--59
--60
SELECT * FROM EMP WHERE DEPTNO=10 AND JOB NOT IN (SELECT JOB FROM EMP WHERE
DEPTNO=20);
--61
--62
SELECT MAX(SAL) FROM EMP;
-63
-64
SELECT * FROM EMP A INNER JOIN DEPT B ON A.DEPTNO=B.DEPTNO WHERE SAL=(SELECT max(sal)
FROM EMP A INNER JOIN DEPT B ON A.DEPTNO=B.DEPTNO where DNAME='SALES');
-65
-66
select * from emp where mgr=(select empno from emp where eMPname='KING') AND
HIREDATE<(SELECT MIN(HIREDATE) FROM EMP where eMPname='KING');
-67
-68
SELECT * FROM EMP WHERE HIREDATE BETWEEN '01-JAN-81' AND '31-DEC-81'AND HIREDATE<=(SELECT
MIN(HIREDATE) FROM EMP WHERE HIREDATE BETWEEN '01-JAN-81' AND '31-DEC-81');
-69
SELECT * FROM EMP WHERE HIREDATE BETWEEN '01-JAN-81' AND '31-DEC-81' AND JOB IN
(SELECT JOB FROM EMP where HIREDATE<=(SELECT MIN(HIREDATE) FROM EMP WHERE HIREDATE
BETWEEN '01-JAN-81' AND '31-DEC-81'));
-70
-71
SELECT SUM(SAL) FROM EMP WHERE EMPNO IN (SELECT MGR FROM EMP);
-72
SELECT JOB,SUM(SAL*12) FROM EMP WHERE HIREDATE BETWEEN '01-JAN-81' AND '31-DEC-81' GROUP
BY JOB;
-73
--74
-75
SELECT * FROM EMP WHERE DEPTNO=20 AND SAL>(select avg(sal) FROM EMP where DEPTNO=10);