You are on page 1of 2

EMPNO ENMAE JOB MGR HIREDATE SAL COMM DEPTNO

----- -------------------- ---------- ----- --------- ----- ----- ------

1001 scott presedent 01-JAN-78 5000 10

1002 clark manager 1001 01-JAN-78 4000 10

1003 smith manager 1001 01-JAN-78 3500 500 20

1004 vijay manager 1001 01-JAN-78 4000 30

1005 ajay salesman 1003 02-APR-79 3000 300 20

1006 satish salesman 1003 02-AUG-78 4000 600 20

1007 venkat salesman 1003 04-MAR-78 3300 0 20

1008 vinod clerk 1003 01-MAR-78 2400 20

1009 suneel clerk 1004 05-DEC-83 2000 30

1010 srinivs analyst 1004 03-JAN-79 3400 30

1011 prakesh analyst 1004 01-SEP-81 3100 30

1012 madan analyat 1004 01-SEP-81 3100 30

1013 ravi clerk 1002 01-JUN-78 1800 10

1014 raju clerk 1005 06-JAN-78 2300 20

1015 ramesh clerk 1011 08-OCT-78 2500 30

1015 ramesh clerk 1011 08-OCT-78 2500 30

1015 ramesh clerk 1011 08-OCT-78 2500 30

1015 ramesh clerk 1011 08-OCT-78 2500 30

1015 ramesh clerk 1011 08-OCT-78 2500 30

To get the manger details who have more than 3 associates.

SELECT * FROM EMP WHERE EMPNO IN (SELECT MGR FROM EMP GROUP BY MGR HAVING
COUNT(*)>3);

TO GET THE DETAILS OF EMPOYEES WHERE SAL > AVG(SAL) IN THE SAME DEPARTMENT

select * from emp e where sal>(select avg(sal) from emp m group by deptno having
e.deptno=m.deptno);
To get the duplicate records in a table

SELECT * FROM EMP WHERE EMPNO IN (SELECT empno FROM EMP GROUP BY MGR HAVING
COUNT(*)>2) ORDER BY EMPNO;

To get 7 th highest salary

select * from emp e where 7=(select count(distinct(sal)) from emp m where e.sal<=m.sal);

You might also like