SQL Queries
SQL Queries
54) Display the names of clerks who earn a salary more than the lowest Salary of any
salesman?
Ans: select ename,sal from tvsemp where sal>(select min(sal) from tvsemp where
job='SALESMAN') and job='CLERK';
55) Display the names of employees who earn a salary more than that of jones or that
of salary greater than that of scott?
Ans: select ename,sal from tvsemp where sal>all(select sal from tvsemp where
ename='JONES' OR ename='SCOTT');
56) Display the names of employees who earn Highest salary in their respective
departments?
Ans: select ename,sal,deptno from tvsemp where sal in (select max(sal) from tvsemp group
by deptno);
57) Display the names of employees who earn Highest salaries in their respective job
Groups?
Ans: select ename,job from tvsemp where sal in (select max(sal) from tvsemp group by
job);
58) Display employee names who are working in Accounting department?
Ans: select e.ename,d.dname from emp e,dept d where e.deptno=d.deptno and
d.dname='ACCOUNTING';
59) Display the employee names who are Working in Chicago?
Ans: select e.ename,d.loc from emp e,tvsdept d where e.deptno=d.deptno and
d.loc='CHICAGO';
60) Display the job groups having Total Salary greater than the maximum salary for
Managers?
Ans: select job ,sum(sal) from tvsemp group by job having sum(sal) >(select max(sal) from
tvsemp where job='MANAGER');
61) Display the names of employees from department number 10 with salary greater
than that of ANY employee working in other departments?
Ans: select ename,deptno from tvsemp where sal>any(select min(sal) from tvsemp where
deptno!=10 group by deptno) and deptno=10 ;
62) Display the names of employees from department number 10 with salary greater
than that of ALL employee working in other departments?
Ans: select ename,deptno from tvsemp where sal>all(select max(sal) from tvsemp where
deptno!=10 group by deptno) and deptno=10 ;
63) Display the names of mployees in Upper Case?
Ans: select upper(ename) from tvsemp;
64) Display the names of employees in Lower Case?
Ans: select Lower(ename) from tvsemp;
65) Display the names of employees in Proper case?
Ans: select InitCap(ename)from tvsemp;
Q:66) Find the length of your name using Appropriate Function?
Ans: select lentgh('RAMA') from dual;
67) Display the length of all the employee names?
Ans: select length(ename) from tvsemp;
68) Display the name of employee Concatinate with Employee Number?
Ans: select ename||' '||empno from tvsemp;
69) Use appropriate function and extract 3 characters starting from 2 characters from
the following string 'Oracle' i.e., the out put should be ac?
Ans: select substr('Oracle',3,2) from dual;
70) Find the first occurance of character a from the following string Computer
Maintenance Corporation?
Ans: select lstr('Computer Maintenance Corporation','a' ) from dual;
71) Replace every occurance of alphabet A with B in the string .Alliens (Use Translate
function)?
Ans: select translate('Alliens','A','B') from Dual;
72) Display the information from the employee table . where ever job Manager is
found it should be displayed as Boss?
Ans: select ename ,replace(job,'MANAGER','BOSS') from tvsemp;
73) Display empno,ename,deptno from tvsemp table. Instead of display department
numbers
display the related department name(Use decode function)?
Ans: select empno,ename,deptno,Decode(deptno,10,'ACCOUNTING'
,20,'RESEARCH',30,'SALES','OPERATIONS')DName from tvsemp;
74) Display your Age in Days?
Ans: select sysdate-to_date('30-jul-1977') from dual;
75) Display your Age in Months?
Ans: select months_between(sysdate,to_date('30-jul-1977')) from dual;
76) Display current date as 15th August Friday Nineteen Nienty Seven?
Ans: select To_char(sysdate,'ddth Month Day year') from dual;
77) Display the following output for each row from tvsemp table?
Ans: Q:78
78) Scott has joined the company on 13th August ninteen ninety?
Ans: select empno,ename,to_char(Hiredate,'Day ddth Month year') from tvsemp;
79) Find the nearest Saturday after Current date?
Ans: select next_day(sysdate,'Saturday') from dual;
80) Display the current time?
Ans: select To_Char(sysdate,'HH:MI:SS') from dual;
81) Display the date three months before the Current date?
Ans: select Add_months(sysdate,-3) from dual
82) Display the common jobs from department number 10 and 20?
Ans: select job from tvsemp where job in (select job from tvsemp where deptno=20) and
deptno=10;
83) Display the jobs found in department 10 and 20 Eliminate duplicate jobs?
Ans: select Distinct job from tvsemp where deptno in(10,20);
84) Display the jobs which are unique to department 10?
Ans: select job from tvsemp where deptno=10;
85) Display the details of those employees who do not have any person working
under him?
Ans: select empno,ename,job from tvsemp where empno not in (select mgr from tvsemp
where mgr is not null );
86) Display the details of those employees who are in sales department and grade is
3?
Ans: select e.ename,d.dname,grade from emp e,dept d ,salgrade where e.deptno=d.deptno
and dname='SALES' and grade=3;
87) Display thoes who are not managers?
Ans: select ename from tvsemp where job!='MANAGER';
88) Display those employees whose name contains not less than 4 characters?
Ans: select ename from tvsemp where length(ename)>=4
89) Display those department whose name start with"S" while location name ends
with "K"?
Ans: select e.ename,d.loc from tvsemp e ,tvsdept d where d.loc like('%K') and ename
like('S%')
90) Display those employees whose manager name is Jones?
Ans: select e.ename Superior,e1.ename Subordinate from tvsemp e,e1 where
e.empno=e1.mgr and e.ename='JONES';
91) Display those employees whose salary is more than 3000 after giving 20%
increment?
Ans: select ename,sal,(sal+(sal*0.20)) from tvsemp where (sal+(sal*0.20))>3000;
92) Display all employees with their department names?
Ans: select e.ename,d.dname from tvsemp e, tvsdept d where e.deptno=d.deptno
93) Display ename who are working in sales department?
Ans: select e.ename,d.dname from emp e,dept d where e.deptno=d.deptno and
d.dname='SALES';
94) Display employee name,dept name,salary,and commission for those sal in
between 2000
to 5000 while location is Chicago?
Ans: Select e.ename,d.dname,e.sal,e.comm from tvsemp e,dept d where
e.deptno=d.deptno and sal between 2000 and 5000;
95) Display those employees whose salary is greater than his managers salary?
Ans: Select e.ename,e.sal,e1.ename,e1.sal from tvsemp e,e1 where e.mgr=e1.empno and
e.sal>e1.sal;
96) Display those employees who are working in the same dept where his manager is
work?
Ans: select e.ename,e.deptno,e1.ename,e1.deptno from tvsemp e,e1 where
e.mgr=e1.empno and e.deptno=e1.deptno;
97) Display those employees who are not working under any Manager?
Ans: select ename from tvsemp where mgr is null;
98) Display the grade and employees name for the deptno 10 or 30 but grade is not 4
while
joined the company before 31-DEC-82?
Ans: select ename,grade,deptno,sal from tvsemp ,salgrade where ( grade,sal) in
( select grade,sal from salgrade,tvsemp where sal between losal and hisal)
and grade!=4 and deptno in (10,30) and hiredate<'31-Dec-82';
99) Update the salary of each employee by 10% increment who are not eligible for
commission?
Ans: update tvsemp set sal= (sal+(sal*0.10)) where comm is null;
100) Delete those employees who joined the company before 31-Dec-82 while their
department Location is New York or Chicago?
Ans: select e.ename,e.hiredate,d.loc from tvsemp e,tvsdept d where
e.deptno=d.deptno and hiredate<'31-Dec-82' and d.loc in('NEW YORK','CHICAGO');
101) Display employee name ,job,deptname,loc for all who are working as manager?
Ans: select e.ename,e.job,d.dname,d.loc from tvsemp e,tvsdept d where e.deptno=d.deptno
and e.empno in (select mgr from tvsemp where mgr is not null);
102) Display those employees whose manager name is jones and also display their
manager name?
Ans: select e.ename sub,e1.ename from tvsemp e,e1 where e.mgr=e1.empno and
e1.ename='JONES';
103) Display name and salary of ford if his salary is equal to hisal of his grade?
Ans: select ename,grade,hisal,sal from emp,salgrade where ename='FORD' and sal=hisal;
OR
select grade,sal,hisal from tvsemp,salgrade where ename='FORD' and sal between losal
and hisal;
OR
select ename,sal,hisal,grade from tvsemp,salgrade where ename='FORD'
and (grade,sal) in (select grade,hisal from salgrade,tvsemp where
sal between losal and hisal);
104) Display employee name ,job,deptname,his manager name ,his grade and make
an
under department wise?
Ans: select e.ename sub,e1.ename sup,e.job,d.dname ,grade from tvsemp
e,e1,salgrade,tvsdept d where e.mgr=e1.empno and e.sal between losal and hisal and
e.deptno=d.deptno group by d.deptno,e.ename,e1.ename,e.job,d.dname,grade;
OR
select e.ename sub,e1.ename sup,e.job,d.dname ,grade from tvsemp e,e1,salgrade,tvsdept
d where e.mgr=e1.empno and e.sal between losal and hisal and e.deptno=d.deptno
105) List out all the employee names ,job,salary,grade and deptname for every one in
a company except 'CLERK' . Sort on salary display the highest salary?
Ans: select e.ename ,e.job,e.sal,d.dname ,grade from tvsemp e,salgrade,tvsdept d where
(e.deptno=d.deptno and e.sal between losal and hisal ) order by e.sal desc
106) Display employee name,job abd his manager .Display also employees who are
with out managers?
Ans: select e.ename ,e1.ename,e.job,e.sal,d.dname from tvsemp e,e1,tvsdept d where
e.mgr=e1.empno(+) and e.deptno=d.deptno
107) Display Top 5 employee of a Company?
Ans:
108) Display the names of those employees who are getting the highest salary?
Ans: select ename,sal from tvsemp where sal in (select max(sal) from tvsemp)
109) Display those employees whose salary is equal to average of maximum and
minimum?
Ans: select * from tvsemp
where sal=(select (max(sal)+min(sal))/2 from tvsemp)
110) Select count of employees in each department where count >3?
Ans: select count(*) from tvsemp group by deptno having count(*)>3
111) Display dname where atleast three are working and display only deptname?
Ans: select d.dname from tvsdept d, tvsemp e where e.deptno=d.deptno group by d.dname
having count(*)>3;
112) Display name of those managers name whose salary is more than average
salary of Company?
Ans: select distinct e1.ename,e1.sal from tvsemp e,e1,dept d where e.deptno=d.deptno and
e.mgr=e1.empno and e1.sal> (select avg(sal) from tvsemp);
113) Display those managers name whose salary is more than average salary salary
of his employees?
Ans: select distinct e1.ename,e1.sal from tvsemp e,e1,dept d where e.deptno=d.deptno and
e.mgr=e1.empno and e1.sal>any (select avg(sal) from tvsemp group by deptno);
114) Display employee name,sal,comm and netpay for those employees whose
netpay is
130) Display those employees whose first 2 characters from hiredate - last 2
characters sal?
Ans: select empno,hiredate,sal from tvsemp where
trim(substr(hiredate,1,2))=trim(substr(sal,-2,2));
or
select hiredate,sal from tvsemp where to_Char(hiredate,'dd')=trim(substr(sal,-2,2))
131) Display those employeess whose 10% of salary is equal to the year joining?
Ans: select ename ,sal,0.10*sal from tvsemp where 0.10*sal=trim(to_char(hiredate,'yy'))
132) Display those employees who are working in sales or research?
Ans: select e.ename from tvsemp e ,tvsdept d where e.deptno=d.deptno and d.dname
in('SALES','RESEARCH');
133) Display the grade of jones?
Ans: select ename,grade from tvsemp,salgrade where ( grade,sal) =
(select grade,sal from salgrade,tvsemp where sal between losal and hisal and
ename='JONES')
134) Display those employees who joined the company before 15th of the month?
Ans: select ename ,hiredate from tvsemp where hiredate<'15-Jul-02' and hiredate >='01-jul02';
135) Display those employees who has joined before 15th of the month?
Ans: select ename ,hiredate from tvsemp where hiredate<'15-Jul-02'
136) Delete those records where no of employees in particular department is less
than 3?
Ans: delete from tvsemp where deptno in (select deptno from tvsemp group by deptno
having count(*) <3
137A) Delete those employeewho joined the company 10 years back from today?
Ans: delete from tvsemp where empno in (select empno from tvsemp
where to_char(sysdate,'yyyy')- to_char(hiredate,'yyyy')>=10)
137B) Display the deptname the number of characters of which is equal to no of
employee
in any other department?
Ans:
138) Display the deptname where no employee is working?
Ans: select deptno from tvsemp where empno is null;
139) Display those employees who are working as manager?
Ans: select e2.ename from tvsemp e1,e2 where e1.mgr=e2.empno and e2.empno is not
null
140) Count th number of employees who are working as managers (Using set
opetrator)?
Ans: select d.dname from tvsdept d where length(d.dname) in (select count(*) from tvsemp
e where e.deptno!=d.deptno group by e.deptno)
141) Display the name of the dept those employees who joined the company on the
same date?
Ans: select a.ename,b.ename from tvsemp a,tvsemp b where a.hiredate=b.hiredate and
a.empno!=b.empno
142) Display those employees whose grade is equal to any number of sal but not
equal to first number of sal?
Ans: select ename,sal,grade ,substr(sal,grade,1) from tvsemp,salgrade where
grade!=substr(sal,1,1) and grade = substr(sal,grade,1)
and sal between losal and hisal
(
case when to_char(hiredate,'dd') <=('15') then
LAST_DAY ( next_day(hiredate,'Friday'))
when to_char(hiredate,'dd')>('15') then
LAST_DAY( next_day(add_months(hiredate,1),'Friday'))
end
)
from tvsemp
153) Display those managers who are getting less than his employees salary?
Ans: select a.empno,a.ename ,a.sal,b.sal,b.empno,b.ename from tvsemp a, tvsemp b
where a.mgr=b.empno and a.sal>b.sal
154) Print the details of employees who are subordinates to BLAKE?
Ans: select a.empno,a.ename ,b.ename from tvsemp a, tvsemp b where a.mgr=b.empno
and b.ename='BLAKE'
**********************
151.Display those who working as manager using co related sub query
select * from emp where empno in (select mgr from emp);
152.Display those employees whose manager name is JONES and also with his
manager name
select * from emp where mgr=(select empno from emp where ename='JONES') union
select * from emp where empno =
(select mgr from emp where ename='JONES');
153.Define variable representing the expressions used to calculate on employees
total annual renumaration
define emp_ann_sal=(sal+nvl(comm,0))*.12;
154.Use the variable in a statement which finds all employees who can earn 30000 a
year or more
select * from emp where &emp_ann_sal>30000;
155.Find out how many managers are there with out listing them
select count(*) from emp where empno in (select mgr from emp);
156.Find out the avg sal and avg total remuneration for each job type remember
salesman earn commission
select job,avg(sal+nvl(comm,0)),sum(sal+nvl(comm,0)) from emp group by job;
157.Check whether all employees number are indeed unique
select count(empno) ,count(distinct(empno)) from emp having
count(empno)=(count(distinct(empno));
158.List out the lowest paid employees working for each manager, exclude any
groups where minsal is less than
1000 sort the output by sal
select e.ename,e.mgr,e.sal from emp e where sal in (select min(sal) from emp where
mgr=e.mgr) and
e.sal>1000 order by sal;
159.List ename,job,annual sal,depno,dname and grade who earn 30000 per year and
who are not clerks
select e.ename,e.job,(e.sal+nvl(e.comm,0))*12,e.deptno,d.dname,s.grade from emp
e,salgrade s,dept d
where e.sal between s.losal and s.hisal and e.deptno=d.deptno and (e.sal+nvl(comm,0))*12
> 30000
and e.job<>'CLERK';
160.Find out th job that was falled in the first half of 1983 and the same job that was
falled during the
same period on 1984
161.Find out the all employees who joined the company before their manager
select * from emp e where hiredate <(select hiredate from emp where empno=e.mgr);
162.List out the all employees by name and number along with their manager's name
and number also display
'NO MANAGER' who has no manager
select e.empno,e.ename,m.empno Manager,m.ename ManagerName from emp e,emp m
where e.mgr=m.empno
union
select empno,ename,mgr,'NO Manager' from emp where mgr is null;
163.Find out the employees who earned the highest sal in each job typed sort in
descending sal order
select * from emp e where sal=(select max(sal) from emp where job=e.job);
164.Find out the employees who earned the min sal for their job in ascending order
select * from emp e where sal=(select min(sal) from emp where job=e.job) order by sal;
165.Find out the most recently hired employees in each dept order by hire date
select * from emp order by deptno,hiredate desc;
166.Display ename,sal and deptno for each employee who earn a sal greater than the
avg of their department
order by deptno
select ename,sal,deptno from emp e where sal>(select avg(sal) from emp where
deptno=e.deptno) order by deptno;
167.Display the department where there are no employees
select deptno,dname from dept where deptno not in (select distinct(deptno) from emp);
168.Display the dept no with highest annual remuneration bill as compensation
select deptno,sum(sal) from emp group by deptno having sum(sal)=(select max(sum(sal))
from emp group by deptno);
169.In which year did most people join the company. Display the year and number of
employees
select count(*),to_char(hiredate,'yyyy') from emp group by to_char(hiredate,'yyyy');
170.Display avg sal figure for the dept
select deptno,avg(sal) from emp group by deptno;
171.Write a query of display against the row of the most recently hierd
employee.display ename hire date
and column max date showing
select empno,hiredate from emp wher hiredate=(select max(hiredate) from emp);
172.Display employees who can earn more than lowest sal in dept no 30
select * from emp where sal > (select min(sal) from emp where deptno=30);
173.Find employees who can earn more than every employees in dept no 30
select * from emp where sal>(select max(sal) from emp where deptno=30);
select * from emp where sal>all(select sal from emp where deptno=30);
174.select dept name and deptno and sum of sal
break on deptno on dname;
select e.deptno,d.dname,sal from emp e,dept d where e.deptno=d.deptno order by
e.deptno;
175.Find out avg sal and avg total remainders for each job type
No comments:
Post a Comment
Newer Post Older Post Home
Subscribe to: Post Comments (Atom)
PL/SQL
INTRODUCTION
**************************************
Indtroduction to PL/SQL
Structure-of-PL/SQL-program
How-PL/SQL-program-look-like
Advantages-of-PL/SQL
PL/SQL-variables
How-to-execute-PL/SQL-program