Lab_Manual_Database_033
Lab_Manual_Database_033
Submitted By
Abdul Mateen
(ADP-CS-033)
Submitted To
1
LAB -1 Introduction to mySQL 3
LAB -8 JOINS 36
Table of Content
2
LAB 1
Introduction to mySQL
DataBase
Table
3
Structure
Insert Values
Record
Figure 6 : Record
4
Result
Figure 8 : Result
Record
Figure 9 : Record
Creating Table
Structure
Insert Value
6
LAB 2
Creating tables using DDL and practicing DDL Queries in SQL
Creating Table
Creating DEPT Table :
Query
CREATE TABLE dept
(
deptno NUMBER (20),
dname VARCHAR2 (14),
loc VARCAHR2(13)
);
Result
Figure 16 : Result
Structure
7
Figure 17 : Structure of DEPT Table
Result
Figure 19 : Result
Structure
8
Figure 20 : Structure of STUDENTS Table
Alter Table
Adding Column :
Query
ALTER TABLE TUF_STUDENTS
ADD (CGPA NUMBER(3,2));
Result
Figure 22 : Result
Structure
Modifing Column :
Query
ALTER TABLE TUF_STUDENTS
9
MODIFY (STD_ADD VARCHAR2(40));
Figure 25 : Result
Structure
Drop Column :
Query
ALTER TABLE TUF_STUDENTS
DROP COLUMN STD_ADD;
Figure 28 : Result
10
Structure
Drop Table
Query
DROP TABLE DEPT;
Result
Query
RENAME TUF_STUDENTS TO STUDENTS;
Result
Figure 33
11: Result
Name Before Changed
12
LAB 3
Insert Values in the Table using DML and practicing DML Queries in SQL
Insert Data
Query
INSERT INTO departments
(department_id, department_name,manager_id, location_id)
VALUES(77, 'Public Relations', 100, 1700);
Result
Figure 37 : Result
Record
Figure 38 : Record
Figure 40 : Result
13
Record
Figure 41 : Record
Result
Figure 43 : Result
Record
Figure 44 : Record
14
LAB 4
Update and Delete Values in Table using DML and practicing DML
Queries in SQL
Update Rows
Query
UPDATE employees
SET department_id = 70
WHERE employee_id = 113;
Result
Figure 46 : Result
Record
Figure 47 : Record
Update All
Query
UPDATE JOBS
SET MIN_SALARY = 1000;
Figure 49 : Result
15
Record Before Update
Result
Figure 53 : Result
16
Delete Rows
Query
DELETE FROM Employees
WHERE EMPLOYEE_ID = 111;
Result
Figure 55 : Result
Delete All
Query
DELETE FROM Job_History;
17
Result
Figure 59 : Result
Result
Figure 63 : Result
18
LAB 5
Practice of DDL and DML queries with different case scenarios
DDL
Create Table :
Query
CREATE TABLE STUDENT_RESULT(
REG# VARCHAR2(30) NOT NULL,
NAME VARCHAR2(30),
DEPT VARCHAR2(30),
CLASS VARCHAR2(30),
CGPA NUMBER(3,2));
Result
Figure 65 : Result
Structure
19
Add Column
Query
ALTER TABLE STUDENT_RESULT
ADD ADDRESS VARCHAR(40);
Result
Figure 68 : Result
Structure
Modify Table
Query
ALTER TABLE STUDENT_RESULT
MODIFY (ADDRESS VARCHAR2(50));
Figure 71 : Result
20
Drop Column
Query
ALTER TABLE STUDENT_RESULT
DROP COLUMN ADDRESS;
Result
Figure 73 : Result
Structure
DML
Insert Values
Query
INSERT INTO STUDENT_RESULT (
REG#, NAME, DEPT, CLASS, CGPA)
VALUES (1,’Arslan’,’CS’,’B’,3);
21
Result
Figure 76 : Result
Record
Figure 77 : Record
Result
Figure 79 : Result
22
Structure
Result
Figure 82 : Result
Query
SELECT * FROM Student_Result
WHERE REG# = '1';
Result
Figure 84 : Result
23
LAB 6
Practical Test(Create, Alter, Drop, Insert, Update, Delete)
Q1
Create Table
Query
CREATE TABLE monthly_sales(
CUST_ID NUMBER(3) PRIMARY KEY,
PROD_ID NUMBER(3) NOT NULL,
PROD_Name VARCHAR2(20) NOT NULL,
Price NUMBER(7) NOT NULL,
Quantity NUMBER(3),
Bill_Total NUMBER(7),
Date_ DATE);
Result
Figure 86 : Result
Structure
24
Insert Values
Query
INSERT ALL
INTO MONTHLY_SALES VALUES(1,1,'Shampo',165,2,330,'26-Mar-23')
INTO MONTHLY_SALES VALUES(2,2,'Soap',32,10,320,'26-Mar-23')
INTO MONTHLY_SALES VALUES(3,3,'Cream',85,1,85,'26-Mar-23')
INTO MONTHLY_SALES VALUES(4,1,'Shampo',165,1,165,'27-Mar-23')
INTO MONTHLY_SALES VALUES(5,3,'Cream',85,2,170,'28-Mar-23')
SELECT * FROM DUAL;
Result
Figure 89 : Result
Record
Add Column
Query
ALTER TABLE MONTHLY_SALES
ADD Return_Date DATE;
25
Figure 91 : Add Column
Result
Figure 92 : Result
Structure
Rename Column
Query
ALTER TABLE MONTHLY_SALES
RENAME COLUMN DATE_ to Sales_Date;
Result
Figure 95 : Result
26
Structure
DELETE Column
Query
ALTER TABLE MONTHLY_SALES
DROP COLUMN Sales_Date;
Result
Figure 98 : Result
Structure
27
Update Record
Query
UPDATE MONTHLY_SALES
Set PRICE = 100
Where PROD_ID = 3;
Record
Q2
Create Table
Query
CREATE TABLE STUDENT(
Name VARCHAR2(14) NOT NULL,
Address VARCHAR2(40),
Class VARCHAR2(6),
CGAP NUMBER(3,2)
);
28
Result
Structure
Insert Values
Query
INSERT ALL
INTO STUDENT VALUES('Bilal','Islamabad','BSCS',3.65)
INTO STUDENT VALUES('Faisal','Bhawalnagar','BSIT',3.47)
INTO STUDENT VALUES('Aqsa','Lahore','BSCS',3.70)
SELECT * FROM DUAL;
Record
29
Display Name & CGAP only
Query
SELECT NAME,CGAP FROM STUDENT;
Result
Display all student names that have more than a 3.5 CGPA.
Query
SELECT NAME FROM STUDENT
WHERE CGAP > 3.5;
Result
30
LAB 7
Where And Order By Clause, & other Restricting Data Constraints
WHERE
Query
SELECT employee_id, last_name, job_id, department_id
FROM employees
WHERE department_id = 90;
Result
Query
SELECT last_name, job_id, department_id
FROM employees
WHERE last_name = 'Whalen';
Result
Comparison Condition
Query
SELECT last_name, salary
FROM employees
WHERE salary <= 3000;
31
Figure 116 : Comparison Condition
Result
BETWEEN AND
Query
SELECT last_name, salary
FROM employees
WHERE salary BETWEEN 2500 AND 3500;
IN
32
Query
SELECT employee_id, last_name, salary, manager_id
FROM employees
WHERE manager_id IN (100, 101, 201);
Result
Like
Query
SELECT first_name
FROM employees
WHERE first_name LIKE 'S%';
Result
33
SELECT last_name
FROM employees
WHERE last_name LIKE '_o%';
Result
Result
AND Operator
Query
SELECT employee_id, last_name, job_id, salary
FROM employees
WHERE salary >=10000
AND job_id LIKE '%MAN%';
OR Operator
Query
SELECT employee_id, last_name, job_id, salary FROM employees
WHERE salary >= 10000
OR job_id LIKE '%MAN%';
Result
NOT Operator
Query
SELECT last_name, job_id FROM employees
WHERE job_id NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP');
Precedence
Query
SELECT last_name, job_id, salary FROM employees
WHERE job_id = 'SA_REP'
OR job_id = 'AD_PRES' AND salary > 15000;
36
Result
Order By
Query
SELECT last_name, job_id, department_id, hire_date FROM
employees
ORDER BY hire_date;
Result
Order By DESC
Query
SELECT last_name, job_id, department_id, hire_dateFROM
employees
ORDER BY hire_date DESC ;
Result
Result
Structure
38
Insert Values
Query
INSERT into employee
VALUES
(1, 'Vardhan', 'Kumar', 22, 'vardy@abc.com', '9876543210', 'Dehli'),
(2, 'Himani', 'Sharma', 32, 'himani@abc.com', '9876543210',
'Mumbai'),
(3, 'Aayushi', 'Shresgth', 24, 'aayush@abc.com', '9876543210',
'Kolkata'),
(4, 'Hemanth', 'Sharma', 25, 'hemanth@abc.com', '9876543210',
'Dehli'),
(5, 'Swatee', 'Kapoor', 26, 'saweet@abc.com', '9876543210',
'Hydrabad');
Result
Record
39
Create Table
Query
CREATE TABLE PROJECT(
ProjectId int PRIMARY KEY,
EmpId int,
ClientID int,
ProjectName varchar(20),
ProjectStartDate Date,
FOREIGN KEY (EmpId) REFERENCES employee (EmpId)
);
Result
Structure
40
Insert Values
Query
INSERT INTO project
VALUES
(111,1,3, 'Project1', 2019-04-21),
(222,2,1, 'Project2', 2019-02-12),
(333,3,5, 'Project3', 2019-01-10),
(444,4,2, 'Project4', 2019-04-16),
(555,5,4, 'Project5', 2019-05-23);
Result
Record
41
Cross Join
Query
SELECT * FROM employee
CROSS JOIN project;
Result
Inner Join
Query
SELECT Employee.EmpID, Employee.EmpFname, Employee.EmpLname,
Projects.ProjectID, Projects.ProjectName
FROM Employee
INNER JOIN Projects ON Employee.EmpID=Projects.EmpID;
42
Result
Left Join
Query
SELECT Employee.EmpID, Employee.EmpFname, Employee.EmpLname,
Project.ProjectID, Project.ProjectName
FROM Employee
LEFT JOIN Project ON Employee.EmpID=Project.EmpID;
Result
43
RIGHT JOIN Project ON Employee.EmpID=Project.EmpID;
Result
44
LAB 9
Self Join, Multi Join, and Union
Self Join
Query
SELECT * FROM employee A
INNER JOIN employee B
ON A.EmpID = B.EmpID;
Result
Multi Join
Query
SELECT
employee.EmpID,employee.EmpFname,project.ProjectId,project.Cli
entID,students.Std_ID,students.First_Name
FROM employee,project,students;
Result
45
Figure 165 : Result
Union
Query
SELECT Employee.EmpID, Employee.EmpFname, Project.ProjectID
FROM Employee
LEFT JOIN Project ON Employee.EmpID=Project.EmpID;
UNION
SELECT Employee.EmpID, Employee.EmpFname, Project.ProjectID
FROM Employee
LEFT JOIN Project ON Employee.EmpID=Project.EmpID;
Result
46
Lab 10
SQL Functions(Math & String)
Math Functions
Algebraic Expression
Query
SELECT Age,(Age+3)*2 FROM employee;
Result
AS Keyward
Query
SELECT Age,(Age+3)*2 as Age FROM employee;
Result
47
ABS()
Query
SELECT Age-30,ABS(Age-30) as Age FROM employee;
Result
POWER()
Query
SELECT Age,POWER(Age,2) FROM employee;
Result
ROUND()
Query
SELECT Age+.67,ROUND(Age+.67) FROM employee;
CEILING()
Query
SELECT Age+.67,CEILING(Age+.67) FROM employee;
Result
49
Figure 181 : Result
FLOOR()
Query
SELECT Age+.67,FLOOR(Age+.67) FROM employee;
Result
String Functions
SubString()
Query
SELECT EmpFname,substring(EmpFname,2,3) FROM employee;
Result
50
UPPER()
Query
SELECT EmpFname, UPPER(EmpFname) FROM employee;
LOWER()
Query
SELECT EmpFname,LOWER(EmpFname) FROM employee;
Result
REVERSE()
Query
SELECT EmpFname,REVERSE(EmpFname) FROM employee;
51
Figure 190 : REVERSE Function
Result
LENGTH()
Query
SELECT EmpFname,LENGTH(EmpFname) FROM employee;
52
LAB 11
SQL Functions (DATE & Aggregate)
NOW()
Query
INSERT INTO students
VALUES(6,'Std5','F',now(),'std5@gmial.com');
Result
Record
EXTRACT()
Query
SELECT Std_DOB,EXTRACT(DAY FROM Std_DOB),EXTRACT(MONTH FROM
Std_DOB),EXTRACT(YEAR FROM Std_DOB)
FROM students
WHERE Std_ID = 6;
Result
Result
DATE_SUB()
Query
SELECT Std_DOB,DATE_SUB(Std_DOB,INTERVAL 5 DAY),
DATE_SUB(Std_DOB,INTERVAL 5 MONTH),DATE_SUB(Std_DOB,INTERVAL 5
YEAR)
FROM students
WHERE Std_ID = 6;
Result
54
DATEDIFF()
Query
SELECT DATEDIFF(DATE_ADD(Std_DOB,INTERVAL 5 DAY),Std_DOB)FROM
students WHERE Std_ID = 6;
SUM()
Query
SELECT SUM(AGE) FROM employee;
Result
AVG()
Query
SELECT AVG(AGE) FROM employee;
Result
MIN()
Query
SELECT MIN(AGE) FROM employee;
Result
56
LAB 12
Practice of SQL Queries with different scenarios
Creating Table
Query
CREATE TABLE STUDENT(
RollNO int PRIMARY KEY,
Name VARCHAR(18) NOT null,
Fname VARCHAR(18),
Class VARCHAR(12),
Session VARCHAR(20),
Mobile VARCHAR(11),
City VARCHAR(14)
);
Result
Structure
57
Insert Values
Query
INSERT INTO STUDENT
VALUES(1,'Muhammad Ahmad','Ahmad','BSCS','2021-2025', '03001234567',
'Faisalabad'),
(10,'Mohammad Ali','Ali','BSCS','2021-
2025','03001234567','Faisalabad'),
(15,'Muhammad Ahmed','Ahmed','BSCS','2021-2025', '03001234567',
'Faisalabad'),
(13,'Ali','A','BSCS','2021-2025','03001234567','Faisalabad'),
(7,'Muhammad Majeed','Abdul Majeed','BSCS','2021-
2025','03001234567', 'Faisalabad');
Result
Record
58
Q1
Query
SELECT * FROM STUDENT
WHERE Name LIKE 'Muhammad%' or 'Mohammad%' and City =
'Faisalabad';
Result
Q2
Query
DELETE FROM STUDENT
WHERE Name LIKE '%Ahmad%' or '%Ahmed%';
Result
59
Record
Q3
Query
INSERT INTO students
VALUES(12,'Kashif Mahmood','Abdul Majeed','BSCS','2021-
2025','03214266477','Multan');
Result
Record
Q4
Query
UPDATE student
60
SET Name= 'Hassan Naseem', FName = 'Muhammad Naseem',Class =
'BSCS', Session = '2020-2022', Mobile = '03334709706',
City='Sahiwal'
WHERE RollNo = 13;
Result
61