SQL Queries: Create The Following Tables
SQL Queries: Create The Following Tables
LOCATION
Location_ID Regional_Group
122 NEW YORK
123 DALLAS
124 CHICAGO
167 BOSTON
DEPARTMENT
Department_ID Name Location_ID
10 ACCOUNTING 122
20 RESEARCH 124
30 SALES 123
40 OPERATIONS 167
JOB
Job_ID Function
667 CLERK
668 STAFF
669 ANALYST
670 SALESPERSON
671 MANAGER
672 PRESIDENT
EMPLOYEE
EMPLOYEE_ LAST_N FIRST_N MIDDLE_ JOB_ MANAGER_ DEPARTMENT_I
HIREDATE SALARY COMM
ID AME AME NAME ID ID D
7369 SMITH JOHN Q 667 7902 17-DEC-84 800 NULL 20
7499 ALLEN KEVIN J 670 7698 20-FEB-85 1600 300 30
7505 DOYLE JEAN K 671 7839 04-APR-85 2850 NULL 30
7506 DENNIS LYNN S 671 7839 15-MAY-85 2750 NULL 30
7507 BAKER LESLIE D 671 7839 10-JUN-85 2200 NULL 40
7521 WARK CYNTHIA D 670 7698 22-FEB-85 1250 500 30
Simple Queries:
Where Conditions:
Order By Clause:
18. List out the employee id, last name in ascending order based on the employee
id. 19.List out the employee id, name in descending order based on salary column
20. list out the employee details according to their last_name in ascending order and salaries
in descending order
21. list out the employee details according to their last_name in ascending order and then
on department_id in descending order.
22. How many employees who are working in different departments wise in the organization
23. List out the department wise maximum salary, minimum salary, average salary of the
employees 24.List out the job wise maximum salary, minimum salary, average salaries of the
employees.
25. List out the no.of employees joined in every month in ascending order.
26. List out the no.of employees for each month and year, in the ascending order based on the
year, month.
27. List out the department id having atleast four
employees. 28.How many employees in January month.
29.How many employees who are joined in January or September month.
30.How many employees who are joined in 1985.
31.How many employees joined each month in 1985.
32.How many employees who are joined in March 1985.
33. Which is the department id, having greater than or equal to 3 employees joined in April 1985.
Sub-Queries
43. List out the employees who earn more than every employee in department 30.
44.List out the employees who earn more than the lowest salary in department
30. 45.Find out whose department has not employees.
46. Find out which department does not have any employees.
47. Find out the employees who earn greater than the average salary for their department.
JOINS
Simple join
Self Join:
59. Display the employee details with their manager names.
60. Display the employee details who earn more than their managers
salaries. 61.Show the no. of employees working under every manager.
Outer Join:
Set Operators:
Answers
from job;
6. SQL > Select employee_id “id of the employee”, last_name “name", department id as “department
id” from employee;
last_name=’SMITH’;
10. SQL > Select * from employee where salary between 3000 and
12. SQL > Select last_name, salary, commission, department_id from employee where department_id
not in (10,30)
13. SQL > Select * from employee where last_name like ‘S%’
‘S ’
16.SQL > Select * from employee where department_id=10 and salary>3500
19.SQL > Select employee_id, last_name, salary from employee order by salary desc
20. SQL > Select employee_id, last_name, salary from employee order by last_name, salary desc
21. SQL > Select employee_id, last_name, salary from employee order by last_name,
department_id desc
22. SQL > Select department_id, count(*), from employee group by department_id
23. SQL > Select department_id, count(*), max(salary), min(salary), avg(salary) from
employeegroup by department_id
24. SQL > Select job_id, count(*), max(salary), min(salary), avg(salary) from employee group by job_id
26. SQL > Select to_char(hire_date,’yyyy’) Year, to_char(hire_date,’mon’) Month, count(*) “No.
of employees” from employee group by to_char(hire_date,’yyyy’), to_char(hire_date,’mon’)
27. SQL > Select department_id, count(*) from employee group by department_id having count(*)>=4
33. SQL > Select department_id, count(*) “No. of employees” from employee where
to_char(hire_date,’yyyy’)=1985 and to_char(hire_date,’mon’)=’apr’ group by
to_char(hire_date,’yyyy’), to_char(hire_date,’mon’), department_id having count(*)>=3
34. SQL > Select * from employee where salary=(select max(salary) from employee)
35. SQL > Select * from employee where department_id IN (select department_id from department
where name=’SALES’)
36. SQL > Select * from employee where job_id in (select job_id from job where function=’CLERK’
37. SQL > Select * from employee where department_id=(select department_id from department
where location_id=(select location_id from location where regional_group=’New York’))
38. SQL > Select * from employee where department_id=(select department_id from department
where name=’SALES’ group by department_id)
39. SQL > Update employee set salary=salary*10/100 wehre job_id=(select job_id from job
where function=’CLERK’)
40. SQL > delete from employee where department_id=(select department_id from department
where name=’ACCOUNTING’)
41. SQL > Select * from employee where salary=(select max(salary) from employee where salary
<(select max(salary) from employee))
42. SQL > Select distinct e.salary from employee where & no-1=(select count(distinct salary)
from employee where sal>e.salary)
43. SQL > Select * from employee where salary > all (Select salary from employee
where department_id=30)
44. SQL > Select * from employee where salary > any (Select salary from employee
where department_id=30)
45. SQL > Select employee_id, last_name, department_id from employee e where not exists
(select department_id from department d where d.department_id=e.department_id)
46. SQL > Select name from department d where not exists (select last_name from employee e
where d.department_id=e.department_id)
47. SQL > Select employee_id, last_name, salary, department_id from employee e where salary >
(select avg(salary) from employee where department_id=e.department_id)
48. SQL > Select employee_id, last_name, name from employee e, department d
where e.department_id=d.department_id
49. SQL > Select employee_id, last_name, function from employee e, job j where e.job_id=j.job_id
50. SQL > Select employee_id, last_name, name, regional_group from employee e, department
d, location l where e.department_id=d.department_id and d.location_id=l.location_id
52. SQL > Select name, count(*) from employee e, department d where
d.department_id=e.department_id group by name having
name=’SALES’
53. SQL > Select name, count(*) from employee e, department d where
d.department_id=e.department_id group by name having count (*)>=5 order by
name
54. SQL > Select function, count(*) from employee e, job j where j.job_id=e.job_id group by function
55. SQL > Select regional_group, count(*) from employee e, department d, location l where
e.department_id=d.department_id and d.location_id=l.location_id and regional_group=’NEW
YORK’ group by regional_group
56. SQL > Select employee_id, last_name, grade_id from employee e, salary_grade s where
salary between lower_bound and upper_bound order by last_name
57. SQL > Select grade_id, count(*) from employee e, salary_grade s where salary
between lower_bound and upper_bound group by grade_id order by grade_id desc
58. SQL > Select grade_id, count(*) from employee e, salary_grade s where salary between
lower_bound and upper_bound and lower_bound>=2000 and lower_bound<=5000 group by
grade_id order by grade_id desc
59. SQL > Select e.last_name emp_name, m.last_name, mgr_name from employee e, employee
m where e.manager_id=m.employee_id
60. SQL > Select e.last_name emp_name, e.salary emp_salary, m.last_name, mgr_name,
m.salary mgr_salary from employee e, employee m where e.manager_id=m.employee_id and
m.salary
62. SQL > Select last_name, d.department_id, d.name from employee e, department d
where e.department_id(+)=d.department_id
63. SQL > Select last_name, d.department_id, d.name from employee e, department d where
e.department_id(+)=d.department_id and d.department_idin (select department_id from
department where name IN (‘SALES’,’OPERATIONS’))
64. SQL > Select function from job where job_id in (Select job_id from employee where
department_id=(select department_id from department where name=’SALES’)) union Select function
from job where job_id in (Select job_id from employee where department_id=(select department_id
from department where name=’ACCOUNTING’))
65. SQL > Select function from job where job_id in (Select job_id from employee where
department_id=(select department_id from department where name=’SALES’)) union all Select function
from job where job_id in (Select job_id from employee where department_id=(select department_id
from department where name=’ACCOUNTING’))
66. SQL > Select function from job where job_id in (Select job_id from employee where
department_id=(select department_id from department where name=’RESEARCH’)) intersect
Select function from job where job_id in (Select job_id from employee where department_id=(select
department_id from department where name=’ACCOUNTING’)) order by function