Professional Documents
Culture Documents
CreateDate DATE,
CostOfMaterials DECIMAL,
ExactWeight VARCHAR(20),
Lot VARCHAR(50),
Includes INT,
);
ProductType VARCHAR(50),
CreatedFrom INT,
Units INT,
Type VARCHAR(50),
QualityTest CHAR(1),
ProductDesc VARCHAR(255),
);
UnitCost DECIMAL
);
1B) -- Inserting into ProductionLoss table
(2, 5.50),
(3, 8.75);
Q2)1A) CREATE DATABASE MaarifaDB;
Fname VARCHAR(50),
MNIT INT,
LName VARCHAR(50),
DOB DATE,
SEX CHAR(1),
Address VARCHAR(100),
Salary DECIMAL(10,2),
SUPPERSSN INT,
DNUMBER INT
);
DNAME VARCHAR(50),
MGRSSN INT,
MGRSTARTDATE DATE
);
c. SQL statements to insert values into EmployeeTB_REG_NUMBER and
DEPARTMENTTB_REG_NUMBER:VALUES
('Usamaks', 123456, 'JABIR', 334455, '1999-01-20', 'M', 'SAAD', 450000, 123356, 3),
('HAMID', 998877, 'YASIR', 665544, '1994-01-20', 'M', 'RAMIA', 223399, 'ZAID', 112388, 'MULA', 880099,
'KHEIR', 551199);
VALUES
d. SQL queries: i. Sum, max, min, and average salary of employees in the "Accounting"
department:SELECT
SUM(Salary) AS Total_Salary,
MAX(Salary) AS Max_Salary,
MIN(Salary) AS Min_Salary,
AVG(Salary) AS Avg_Salary
FROM
EmployeeTB_REG_NUMBER E
WHERE
D.DNAME = 'Accounting';
WHERE EXISTS (
SELECT 1
FROM DEPARTMENTTB_REG_NUMBER D
);
iii. Names of each department and the number of employees working in each
department with at least 2 employees:
FROM EmployeeTB_REG_NUMBER E
GROUP BY D.DNAME
FROM EmployeeTB_REG_NUMBER
FROM EmployeeTB_REG_NUMBER E
USE YourDatabaseName;
first_name VARCHAR(255),
last_name VARCHAR(255),
salary INT,
joining_date DATE,
department VARCHAR(255)
);
worker_ref_id INT,
bonus_amount INT,
bonus_date DATE,
);
SELECT first_name
FROM StaffTb
WHERE staff_id = (SELECT worker_ref_id FROM StaffBonus ORDER BY bonus_amount DESC LIMIT 1);
ii. Fetch all staff's salary and their corresponding bonus received between the year 2022 and
2017:
FROM StaffTb s
iii. Print the FIRST_NAME and LAST_NAME from Staff Table into a single column
COMPLETE_NAME:
FROM StaffTb;
iv. Print all staff details from the Staff Table ordered by FIRST NAME ascending and
DEPARTMENT descending:
SELECT *
FROM StaffTb
SELECT *
FROM StaffTb
Q4)2022
d. i. SQL statement to create a scalar value function to display the profit obtained for
each product:
CREATE FUNCTION CalculateProfit (production_cost FLOAT, production_price DECIMAL)
RETURNS DECIMAL
BEGIN
DECLARE profit DECIMAL;
SET profit = production_price - production_cost;
RETURN profit;
END;
ii. SQL statement to create a procedure called Prod_Price to display profit for each
product:
BEGIN
FROM ProductionTb;
END;
iii. SQL query using DENSE_RANK, OVER function, and partition by clause to rank the production
by cost:
SELECT
production_id,
prod_name,
production_cost,
FROM ProductionTb;