You are on page 1of 12

--2021475

--M.Umar Dad
--OEL

--case study 2
--1
--a)
create table projects(
projectid int,
industry VARCHAR2(100),
typesolution VARCHAR2(100),
budget int,
successmetrics VARCHAR2(100));
--b)
create table clients(
name VARCHAR2(50),
contactinformation int,
feedback varchar(150)
);

--2)
select * FROM projects
order by industry;
--3)
SELECT sum(budget) as "total budget"
from projects
group by budget;
--4)
select successmetrics,avg(budget) as "average budget"
from projects
where successmetrics="Y"
group by successmetrics;
--5)
UPDATE projects set budget=2000
where projectid=002;
--6)
delete from projects where projectid=003;
--7)
insert into projects values('005', 'klash', 'robotics', '5000',
'xyz');

--case study 1
--part c
create table province(
province varchar(25),
budget int
);
create table hospital(
hospitalid int,
province varchar2(25),
maxcap int,
bedinuse int,
bedempty int
);
create table patient(
patientid int,
hospitalid int,
name varchar2(25),
status varchar2(20),
gfund int
);

insert all
into province values('KPK',600000)
into province values('PUNJAB',900000)
into province values('SINDH',700000)
into province values('BALUCHISTAN',500000)
into province values('FATA',400000)
select * from dual;

insert all
into hospital values(001,'PUNJAB',400,50,350)
into hospital values(002,'KPK',100,20,80)
into hospital values(003,'SINDH',20,2,18)
into hospital values(004,'FATA',15,10,5)
into hospital values(005,'BALUCHISTAN',50,24,26)
into hospital values(006,'FATA',25,17,8)
into hospital values(007,'PUNJAB',90,30,60)
select * from dual;

insert all
into patient values(001,002,'ali','mild',10000)
into patient values(002,001,'umar','critical',90000)
into patient values(004,003,'fatima','mild',50000)
into patient values(005,007,'amna','critical',40000)
into patient values(003,005,'ahmad','mild',600000)
into patient values(006,004,'essa','mild',700000)
select * from dual;

--part d
--1)
select hospitalid,bedinuse, maxcap
from hospital
order by bedinuse DESC;
--2)
select hospital.province,count(patient.patientid) as "total patient"
from hospital
left join patient on hospital.hospitalid=patient.hospitalid
group by hospital.province;
--3)
select max(bedinuse) as "PATIENTS"
from hospital;
--4)
alter table hospital
add criticalcount int;
update patient set gfund=gfund+10000 where status ='critical';

You might also like