Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

Ujjwal Singh

0801IT211090
Lab Assignment 3

USE THE FOLLOWING TABLES :


EMP(EMPNO, ENAME, JOB, SAL, HIREDATE, COMM, MGR, DEPTNO)
DEPT(DEPTNO, DNAME, LOC)
emp :
empno decimal(4,0) NOT NULL,
ename varchar(10) default NULL,
job varchar(9) default NULL,
mgr decimal(4,0) default NULL,
hiredate date default NULL,
sal decimal(7,2) default NULL,
comm decimal(7,2) default NULL,
deptno decimal(2,0) default NULL;

dept:
deptno decimal(2,0) default NULL,
dname varchar(14) default NULL,
loc varchar(13) default NULL;

INSERT INTO emp:

'7369','SMITH','CLERK','7902','1980-12-17','800.00',NULL,'20';
'7499','ALLEN','SALESMAN','7698','1981-02-20','1600.00','300.00','30';
'7521','WARD','SALESMAN','7698','1981-02-22','1250.00','500.00','30';
'7566','JONES','MANAGER','7839','1981-04-02','2975.00',NULL,'20';
'7654','MARTIN','SALESMAN','7698','1981-09-28','1250.00','1400.00','30';
'7698','BLAKE','MANAGER','7839','1981-05-01','2850.00',NULL,'30';
'7782','CLARK','MANAGER','7839','1981-06-09','2450.00',NULL,'10';
'7788','SCOTT','ANALYST','7566','1982-12-09','3000.00',NULL,'20';
'7839','KING','PRESIDENT',NULL,'1981-11-17','5000.00',NULL,'10';
'7844','TURNER','SALESMAN','7698','1981-09-08','1500.00','0.00','30';
'7876','ADAMS','CLERK','7788','1983-01-12','1100.00',NULL,'20';
'7900','JAMES','CLERK','7698','1981-12-03','950.00',NULL,'30';
'7902','FORD','ANALYST','7566','1981-12-03','3000.00',NULL,'20';
'7934','MILLER','CLERK','7782','1982-01-23','1300.00',NULL,'10';

INSERT INTO dept:


'10','ACCOUNTING','NEW YORK';
'20','RESEARCH','DALLAS';
'30','SALES','CHICAGO';
'40','OPERATIONS','BOSTON';
Ujjwal Singh
0801IT211090
CODE:
CREATE TABLE emp(
empno decimal(4,0) NOT NULL,
ename varchar(10) default NULL,
job varchar(9) default NULL,
mgr decimal(4,0) default NULL,
hiredate date default NULL,
sal decimal(7,2) default NULL,
comm decimal(7,2) default NULL,
deptno decimal(2,0) default NULL
);

CREATE TABLE dept(


deptno decimal(2,0) default NULL,
dname varchar(14) default NULL,
loc varchar(13) default NULL);

INSERT INTO emp(empno,ename,job,mgr,hiredate,sal,comm,deptno)


VALUES
('7369','SMITH','CLERK','7902','1980-12-17','800.00',NULL,'20'),
('7499','ALLEN','SALESMAN','7698','1981-02-20','1600.00','300.00','30'),
('7521','WARD','SALESMAN','7698','1981-02-22','1250.00','500.00','30'),
('7566','JONES','MANAGER','7839','1981-04-02','2975.00',NULL,'20'),
('7654','MARTIN','SALESMAN','7698','1981-09-28','1250.00','1400.00','30'),
Ujjwal Singh
0801IT211090
('7698','BLAKE','MANAGER','7839','1981-05-01','2850.00',NULL,'30'),
('7782','CLARK','MANAGER','7839','1981-06-09','2450.00',NULL,'10'),
('7788','SCOTT','ANALYST','7566','1982-12-09','3000.00',NULL,'20'),
('7839','KING','PRESIDENT',NULL,'1981-11-17','5000.00',NULL,'10'),
('7844','TURNER','SALESMAN','7698','1981-09-08','1500.00','0.00','30'),
('7876','ADAMS','CLERK','7788','1983-01-12','1100.00',NULL,'20'),
('7900','JAMES','CLERK','7698','1981-12-03','950.00',NULL,'30'),
('7902','FORD','ANALYST','7566','1981-12-03','3000.00',NULL,'20'),
('7934','MILLER','CLERK','7782','1982-01-23','1300.00',NULL,'10');

INSERT INTO dept(deptno,dname,loc)


VALUES
('10','ACCOUNTING','NEW YORK'),
('20','RESEARCH','DALLAS'),
('30','SALES','CHICAGO'),
('40','OPERATIONS','BOSTON');

PERFORM THE FOLLOWING QUERIES :

1. List all rows of the table EMP.


CODE:
SELECT* FROM emp;
Ujjwal Singh
0801IT211090

2. List all rows of the table DEPT.


CODE:
SELECT * FROM dept;

3. List all employees number and employees names from EMP.


CODE:
SELECT empno, ename FROM emp;
Ujjwal Singh
0801IT211090

4. List all distinct jobs from EMP.


CODE:
SELECT DISTINCT job FROM emp;

5. List all employees data in the format : SMITH IS A CLERK .....


CODE:
SELECT CONCAT(ename, ' IS A ', job, ' .... ') AS EmployeeInfo FROM emp;

6. List employees names, Sal and annual sal from Emp table.
CODE:
SELECT ename, sal, sal * 12 AS annual_sal FROM emp;
Ujjwal Singh
0801IT211090
7. Develop a salary sheet from emp table consisting of empno, ename, job, sal, comm, house rent
computed at 25% of sal, Medical Allowance at 15% of sal, Transport Allowance at 10% of sal, and
Net salary consisting of sal, house rent, medical allowance, transport allowance and comm. of the
employees.
CODE:
SELECT empno, ename, job, sal, comm,
sal * 0.25 AS house_rent, sal * 0.15 AS medical_allowance, sal * 0.10 AS transport_allowance,
sal + COALESCE(comm, 0) + (sal * 0.25) + (sal * 0.15) + (sal * 0.10) AS net_salary FROM emp;

8. List all employees who are managers.


CODE:
SELECT * FROM emp WHERE job = 'MANAGER';

9. List of all employees who are either manager or employees.


CODE:
SELECT * FROM emp WHERE job IN ('MANAGER', 'EMPLOYEE');
Ujjwal Singh
0801IT211090
10. List of all employees who are managers of department number 10.
CODE:
SELECT * FROM emp WHERE job = 'MANAGER' AND deptno = 10;

11. List of all employees who are clerk of department number 10.
CODE:
SELECT * FROM emp WHERE job = 'CLERK' AND deptno = 10;

12. List of all employees who are not manager.


CODE:
SELECT * FROM emp WHERE job != 'MANAGER';

13. List of all employees who are working in department number 10.
CODE:
SELECT * FROM emp WHERE deptno = 10;
Ujjwal Singh
0801IT211090
14. List of all employess who are not working in department number 10,12.
CODE:
SELECT * FROM emp WHERE deptno NOT IN (10, 12);

15. List of all employee who are either manager of department number 10 or are analyst.
CODE:
SELECT * FROM emp WHERE (job = 'MANAGER' AND deptno = 10) OR job = 'ANALYST';

16. Change the column heading Job into designation.


CODE:
SELECT empno, ename, job AS designation FROM emp;
Ujjwal Singh
0801IT211090
17. List all salesman and add 500 rupees in each salary.
CODE:
UPDATE emp SET sal = sal + 500 WHERE job = 'SALESMAN';
SELECT * FROM emp WHERE job = 'SALESMAN';

18. List all employees having salary between 2000 and 3000.
CODE:
SELECT * FROM emp WHERE sal BETWEEN 2000 AND 3000;

19. List all employees and find 5% from each salary.


CODE:
SELECT empno, ename, sal, sal * 0.05 AS five_percent FROM emp;
Ujjwal Singh
0801IT211090

20. Find the 10% of manager salary.


CODE:
SELECT job, sal, sal * 0.10 AS ten_percent FROM emp WHERE job = 'MANAGER';

21.Find the daily wedges of each employees.


CODE:
SELECT empno, ename, sal / 30 AS daily_wages FROM emp;

22. Combine ename and job from emp.


CODE:
SELECT CONCAT(ename, ' - ', job) AS emp_name_job FROM emp;
Ujjwal Singh
0801IT211090
23. Combine ename, job and salary from emp.
CODE:
SELECT CONCAT(ename, ' is a ', job, ' with a salary of ', sal) AS emp_info FROM emp;

24. Join ename and job, then change the column heading as comp_name.
CODE:
SELECT CONCAT(ename, ' - ', job) AS comp_name FROM emp;

25. List all records as follows. Smith is clerk and he is working in Dept no 20 Since
12-Mar-1981.
CODE:
SELECT CONCAT(ename, ' is ', job, ' and he/she is working in Dept no ', deptno, ' Since ',
hiredate) AS emp_info FROM emp;
Ujjwal Singh
0801IT211090

26. Find those employees whose commission is less than their salaries.
CODE:
SELECT * FROM emp WHERE comm < sal;

27. Find those employees whose mgr is 7902, 7566, 7788.


CODE:
SELECT * FROM emp WHERE mgr IN (7902, 7566, 7788);

28. List all employees whose name start with 'S'.


CODE:
SELECT * FROM emp WHERE ename LIKE 'S%';
Ujjwal Singh
0801IT211090
29. List all employees having last letter in their name 'R' or 'N'.
CODE:
SELECT * FROM emp WHERE ename LIKE '%R' OR ename LIKE '%N';

30. List all employees having first letter in there name 'W', or 'K' and they dont belong to
department number 10 or 20.
CODE:
SELECT * FROM emp WHERE (LEFT(ename, 1) IN ('W', 'K')) AND (deptno NOT IN
(10, 20));

You might also like