Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Question 3. The attached text file XYX_LTD is an executable SQL script containing workers informations at XYZ company ltd. Execute the script on my SQL
Question 3.
The attached text file XYX_LTD is an executable SQL script containing workers informations at XYZ company ltd. Execute the script on my SQL workbench and use it to answer the following questions: (20 Marks)
a) Write an SQL command to replace any of the workers in the database with yourself. Use your student ID and names to replace the work ID and names. Both the SQL code and the execution output are required. Provide the execution output in picture format in your answer sheet. (4 Marks)
b) Write an SQL query to obtain the names of workers who earn the highest salary. (1 Marks)
c) Write an SQL query to print FIRST_NAME from Worker table in upper case and the
LAST_NAME in lower case. (1 Marks)
d) Create an SQL stored procedure to obtain a list of departments and total amount each department
spends on salary payments. (4 Marks)
e) Write an SQL query to fetch the last five records from a table. (2 Marks)
f) Create an SQL stored procedure that prints a list of all departments indicating the number of people in
each department. (3 Marks)
g) Write an SQL query to obtain the details of all Workers who are also Managers. (2 Marks)
h) Write an SQL query to print details of the Workers whose LAST_NAME begins with A. (1 Mark)
i) Write an SQL query to print details of the Workers who joined XYZ company in June 2014. (1 Mark)
j) Write an SQL query to combine the FIRST_NAME and LAST_NAME of workers in a single column
called COMPLETE_NAME and their salaries in another column. (1 Mark)
schema
DROP DATABASE IF EXISTS XYZ;
CREATE DATABASE XYZ;
USE XYZ;
CREATE TABLE Worker (
WORKER_ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
FIRST_NAME CHAR(25),
LAST_NAME CHAR(25),
SALARY DECIMAL(10,2),
JOINING_DATE DATETIME,
DEPARTMENT CHAR(25)
);
INSERT INTO Worker
(WORKER_ID, FIRST_NAME, LAST_NAME, SALARY, JOINING_DATE, DEPARTMENT) VALUES
(001, 'Kwame', 'Asare', 1000.00, '14-02-20 09.00.00', 'HR'),
(002, 'Issac', 'Lamptey', 800.00, '14-06-11 09.00.00', 'Admin'),
(003, 'John', 'Kummah', 3000.00, '14-02-20 09.00.00', 'HR'),
(004, 'Alice', 'Arthor', 5000.00, '14-06-20 09.00.00', 'Admin'),
(005, 'Venice', 'Brown', 5000.00, '14-06-11 09.00.00', 'Admin'),
(006, 'Elcy', 'Adjie', 2000.00, '14-06-11 09.00.00', 'Account'),
(007, 'Joycelyn', 'Armah', 750.00, '14-01-20 09.00.00', 'Account'),
(008, 'Gideon', 'Adjie', 900.00, '14-04-11 09.00.00', 'Admin');
CREATE TABLE Bonus (
WORKER_REF_ID INT,
BONUS_AMOUNT DECIMAL (10,2),
BONUS_DATE DATETIME,
FOREIGN KEY (WORKER_REF_ID)
REFERENCES Worker(WORKER_ID)
ON DELETE CASCADE
);
INSERT INTO Bonus
(WORKER_REF_ID, BONUS_AMOUNT, BONUS_DATE) VALUES
(001, 5000, '16-02-20'),
(002, 3000, '16-06-11'),
(003, 4000, '16-02-20'),
(001, 4500, '16-02-20'),
(002, 3500, '16-06-11');
CREATE TABLE Title (
WORKER_REF_ID INT,
WORKER_TITLE CHAR(25),
AFFECTED_FROM DATETIME,
FOREIGN KEY (WORKER_REF_ID)
REFERENCES Worker(WORKER_ID)
ON DELETE CASCADE
);
INSERT INTO Title
(WORKER_REF_ID, WORKER_TITLE, AFFECTED_FROM) VALUES
(001, 'Manager', '2016-02-20 00:00:00'),
(002, 'Executive', '2016-06-11 00:00:00'),
(008, 'Executive', '2016-06-11 00:00:00'),
(005, 'Manager', '2016-06-11 00:00:00'),
(004, 'Asst. Manager', '2016-06-11 00:00:00'),
(007, 'Executive', '2016-06-11 00:00:00'),
(006, 'Lead', '2016-06-11 00:00:00'),
(003, 'Lead', '2016-06-11 00:00:00');
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started