Oracle Practice SQL Queries 05:
71) Select count of employees in each department where count >3?
Select count (*) from emp group by deptno having count (*)>3
72) Display dname where atleast three are working and display only deptname?
select d.dname from dept d, emp e where e.deptno=d.deptno group by d.dname having count(*)>3
73) Display name of those managers name whose salary is more than average salary of Company?
SELECT DISTINCT e1.ename, e1.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno
AND e.mgr = e1.empno
AND e1.sal > (SELECT AVG (sal)
FROM emp);
74) Display those managers name whose salary is more than average salary of his employees?
SELECT DISTINCT e1.ename, e1.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno
AND e.mgr = e1.empno
AND e1.sal > ANY (SELECT AVG (sal)
FROM emp
GROUP BY deptno);
75) Display employee name, sal, comm and net pay for those employees whose net pay is greater than or equal to any other employee salary of the company?
SELECT ename, sal, NVL (comm, 0), sal + NVL (comm, 0)
FROM emp
WHERE sal + NVL (comm, 0) > ANY (SELECT e.sal
FROM emp e);
76) Display those employees whose salary is less than his manager but more than salary of other managers?
SELECT e.ename sub, e.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno
AND e.mgr = e1.empno
AND e.salary IN (SELECT e2.sal
FROM emp e2, e, dept d1
WHERE e.mgr = e2.empno AND d1.deptno = e.deptno);
77) Display all employees’ names with total sal of company with each employee name?
78) Find the last 5(least) employees of company?
79) Find out the number of employees whose salary is greater than their managers salary?
SELECT e.ename, e.sal, e1.ename, e1.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno AND e.mgr = e1.empno AND e.sal > e1.sal;
80) Display the manager who are not working under president but they are working under any other manager?
SELECT e2.ename
FROM emp e1, emp e2, emp e3
WHERE e1.mgr = e2.empno AND e2.mgr = e3.empno AND e3.job ! = 'PRESIDENT';
81) Delete those department where no employee working?
Delete from emp where empno is null;
82) Delete those records from emp table whose deptno not available in dept table?
Delete from emp e where e.deptno not in (select deptno from dept)
83) Display those enames whose salary is out of grade available in salgrade table?
SELECT empno, sal
FROM emp
WHERE sal < (SELECT MIN (losal)
FROM salgrade) OR sal > (SELECT MAX (hisal)
FROM salgrade)
84) Display employee name, sal, comm and whose net pay is greater than any other in the company?
SELECT ename, sal, comm, sal + comm
FROM emp
WHERE sal + comm > ANY (SELECT sal + comm
FROM emp)
85) Display name of those employees who are going to retire 31-Dec-99 if maximum job period is 30 years?
SELECT empno, hiredate, SYSDATE,
TO_CHAR (SYSDATE, 'yyyy') - TO_CHAR (hiredate, 'yyyy')
FROM emp
WHERE TO_CHAR (SYSDATE, 'yyyy') - TO_CHAR (hiredate, 'yyyy') = 30
86) Display those employees whose salary is odd value?
Select ename, sal from emp where mod (sal, 2)! =0
87) Display those employees whose salary contains atleast 3 digits?
Select ename, sal from emp where length (sal)=3
88) Display those employees who joined in the company in the month of Dec?
Select empno, ename from emp where trim (to_char (hiredate,'Mon'))=trim ('DEC')
89) Display those employees whose name contains A?
Select ename from emp where ename like ('%A%')
90) Display those employees whose deptno is available in salary?
Select ename, sal from emp where deptno in (select distinct sal from emp);
91) Display those employees whose first 2 characters from hiredate - last 2 characters sal?
Select empno, hiredate, sal from emp where trim (substr (hiredate, 1,2))=trim (substr (sal, -2,2));
OR
Select hiredate, sal from emp where to_Char (hiredate,'dd')=trim (substr (sal, -2,2))
92) Display those employees whose 10% of salary is equal to the year joining?
Select ename, sal, 0.10*sal from emp where 0.10*sal=trim (to_char (hiredate,'yy'))
93) Display those employees who are working in sales or research?
Select e.ename from emp e, dept d where e.deptno=d.deptno and d.dname in ('SALES','RESEARCH');
94) Display the grade of Jones?
SELECT ename, grade
FROM emp, salgrade
WHERE (grade, sal) = (SELECT grade, sal
FROM salgrade, emp
WHERE sal BETWEEN losal AND hisal AND ename = 'JONES')
95) Display those employees who joined the company before 15th of the month?
select ename ,hiredate from emp where hiredate<'15-Jul-02' and hiredate >='01-jul-02';
96) Display those employees who has joined before 15th of the month?
select ename ,hiredate from emp where hiredate<'15-Jul-02'
97) Delete those records where no of employees in particular department is less than 3?
delete from emp where deptno in (select deptno from emp group by deptno having count(*) <3
98) Delete those employeewho joined the company 10 years back from today?
delete from emp where empno in (select empno from emp where to_char(sysdate,'yyyy')- to_char(hiredate,'yyyy')>=10)
99) Display the deptname the number of characters of which is equal to no of employee in any other department?
100) Display the deptname where no employee is working?
select deptno from emp where empno is null;
For More Quries : Oracle Practice Sql-queries -06
71) Select count of employees in each department where count >3?
Select count (*) from emp group by deptno having count (*)>3
72) Display dname where atleast three are working and display only deptname?
select d.dname from dept d, emp e where e.deptno=d.deptno group by d.dname having count(*)>3
73) Display name of those managers name whose salary is more than average salary of Company?
SELECT DISTINCT e1.ename, e1.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno
AND e.mgr = e1.empno
AND e1.sal > (SELECT AVG (sal)
FROM emp);
74) Display those managers name whose salary is more than average salary of his employees?
SELECT DISTINCT e1.ename, e1.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno
AND e.mgr = e1.empno
AND e1.sal > ANY (SELECT AVG (sal)
FROM emp
GROUP BY deptno);
75) Display employee name, sal, comm and net pay for those employees whose net pay is greater than or equal to any other employee salary of the company?
SELECT ename, sal, NVL (comm, 0), sal + NVL (comm, 0)
FROM emp
WHERE sal + NVL (comm, 0) > ANY (SELECT e.sal
FROM emp e);
76) Display those employees whose salary is less than his manager but more than salary of other managers?
SELECT e.ename sub, e.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno
AND e.mgr = e1.empno
AND e.salary IN (SELECT e2.sal
FROM emp e2, e, dept d1
WHERE e.mgr = e2.empno AND d1.deptno = e.deptno);
77) Display all employees’ names with total sal of company with each employee name?
78) Find the last 5(least) employees of company?
79) Find out the number of employees whose salary is greater than their managers salary?
SELECT e.ename, e.sal, e1.ename, e1.sal
FROM emp e, e1, dept d
WHERE e.deptno = d.deptno AND e.mgr = e1.empno AND e.sal > e1.sal;
80) Display the manager who are not working under president but they are working under any other manager?
SELECT e2.ename
FROM emp e1, emp e2, emp e3
WHERE e1.mgr = e2.empno AND e2.mgr = e3.empno AND e3.job ! = 'PRESIDENT';
81) Delete those department where no employee working?
Delete from emp where empno is null;
82) Delete those records from emp table whose deptno not available in dept table?
Delete from emp e where e.deptno not in (select deptno from dept)
83) Display those enames whose salary is out of grade available in salgrade table?
SELECT empno, sal
FROM emp
WHERE sal < (SELECT MIN (losal)
FROM salgrade) OR sal > (SELECT MAX (hisal)
FROM salgrade)
84) Display employee name, sal, comm and whose net pay is greater than any other in the company?
SELECT ename, sal, comm, sal + comm
FROM emp
WHERE sal + comm > ANY (SELECT sal + comm
FROM emp)
85) Display name of those employees who are going to retire 31-Dec-99 if maximum job period is 30 years?
SELECT empno, hiredate, SYSDATE,
TO_CHAR (SYSDATE, 'yyyy') - TO_CHAR (hiredate, 'yyyy')
FROM emp
WHERE TO_CHAR (SYSDATE, 'yyyy') - TO_CHAR (hiredate, 'yyyy') = 30
86) Display those employees whose salary is odd value?
Select ename, sal from emp where mod (sal, 2)! =0
87) Display those employees whose salary contains atleast 3 digits?
Select ename, sal from emp where length (sal)=3
88) Display those employees who joined in the company in the month of Dec?
Select empno, ename from emp where trim (to_char (hiredate,'Mon'))=trim ('DEC')
89) Display those employees whose name contains A?
Select ename from emp where ename like ('%A%')
90) Display those employees whose deptno is available in salary?
Select ename, sal from emp where deptno in (select distinct sal from emp);
91) Display those employees whose first 2 characters from hiredate - last 2 characters sal?
Select empno, hiredate, sal from emp where trim (substr (hiredate, 1,2))=trim (substr (sal, -2,2));
OR
Select hiredate, sal from emp where to_Char (hiredate,'dd')=trim (substr (sal, -2,2))
92) Display those employees whose 10% of salary is equal to the year joining?
Select ename, sal, 0.10*sal from emp where 0.10*sal=trim (to_char (hiredate,'yy'))
93) Display those employees who are working in sales or research?
Select e.ename from emp e, dept d where e.deptno=d.deptno and d.dname in ('SALES','RESEARCH');
94) Display the grade of Jones?
SELECT ename, grade
FROM emp, salgrade
WHERE (grade, sal) = (SELECT grade, sal
FROM salgrade, emp
WHERE sal BETWEEN losal AND hisal AND ename = 'JONES')
95) Display those employees who joined the company before 15th of the month?
select ename ,hiredate from emp where hiredate<'15-Jul-02' and hiredate >='01-jul-02';
96) Display those employees who has joined before 15th of the month?
select ename ,hiredate from emp where hiredate<'15-Jul-02'
97) Delete those records where no of employees in particular department is less than 3?
delete from emp where deptno in (select deptno from emp group by deptno having count(*) <3
98) Delete those employeewho joined the company 10 years back from today?
delete from emp where empno in (select empno from emp where to_char(sysdate,'yyyy')- to_char(hiredate,'yyyy')>=10)
99) Display the deptname the number of characters of which is equal to no of employee in any other department?
100) Display the deptname where no employee is working?
select deptno from emp where empno is null;
For More Quries : Oracle Practice Sql-queries -06
No comments:
Post a Comment