Assignment 6 DBMS
Assignment 6 DBMS
Tables:
Employee:
Project:
Project Allocation:
Code for table:
Queries:
-- 1
SELECT project_description,emp_name from employee natural join project_allocation
natural join project;
-- 2
SELECT emp_name from employee where emp_status='C';
-- 3
select emp_name from employee where strftime('%m',emp_join_date)='11';
-- 4
select project_description from project where project_start_date>'2006-01-01';
-- 5
select emp_name from employee natural join project_allocation natural join project where
project_description='Effects of IT';
-- 6
select project_description from project where project_end_date is null;
-- 7
SELECT E.empno AS EMPLOYEE_NO, E.emp_name AS EMPLOYEE_NAME
FROM employee as E, project as P, project_allocation as R
WHERE (P.project_code = 'P002') AND (R.emp_proj_release_date IS not NULL) AND
(P.project_code = R.project_code) AND (R.empno = E.empno);
-- 8
SELECT (julianday(project_end_date)-julianday(project_start_date)) AS DAYS_TAKEN_P002
FROM project
WHERE project_code='P002';
-- 9
SELECT E.empno,E.emp_name,P.project_description,(CASE
WHEN R.emp_proj_release_date IS NOT NULL
THEN (julianday(R.emp_proj_release_date)-julianday(R.emp_proj_alloc_date))
ELSE (julianday('2009-01-01')-julianday(R.emp_proj_alloc_date))
END) AS DAYS_TAKEN
FROM employee as E natural join project_allocation as R natural join project as P;
-- 10
-- ALTER TABLE project add manager_id int;
-- 11
-- UPDATE project set manager_id=101 where project_code='P001';
-- UPDATE project set manager_id=202 where project_code='P002';
-- UPDATE project set manager_id=116 where project_code='P003';
-- 12
-- insert into project values("P004","Election Rage",'2007-03-01','2023-03-24',NULL);
-- 13
-- DELETE from project where project_description ='Effects of IT';
-- 14
-- select * from project where project_end_date <= project_start_date+interval 1 year;
-- 15
SELECT P.project_code, P.project_description, COUNT(FEB_WORK.empno) AS
NUMBER_OF_EMPLOYEES
FROM (
SELECT empno, project_code
FROM project_allocation
WHERE (emp_proj_alloc_date <= '2007-02-01') AND ((emp_proj_release_date IS NULL) OR
(emp_proj_release_date>='2007-02-28'))
) AS FEB_WORK, project AS P
WHERE (FEB_WORK.project_code = P.project_code) GROUP BY FEB_WORK.project_code;