You are on page 1of 4

create table Patient_info(P_id Varchar(10), P_name varchar(10), P_age number, P_Ph_no number, P_gender varchar(1),

P_bloodgrp varchar(3), P_disease varchar(12), zip_code number, primary key(P_id));

create table city(zip_code number, city varchar(10), state varchar(10), primary key(zip_code));

create table Doctor_info(D_id varchar(10), Dept_id varchar(5), D_name varchar(10), D_Ph_no number, D_desig varchar(10),
Salary number, Zip_code number, primary key(D_id));

create table Department(Dept_id varchar(5), Dept_name varchar(10), Dept_loc varchar(10), Dept_budget number, primary
key(Dept_id));

create table Lab_report(report_id varchar(5), lab_code varchar(5), P_id varchar(5), D_id varchar(5), primary key(report_id));

create table room(Room_no number, Room_type varchar(10), status varchar(10), primary key(Room_no));

create table IPD(P_id varchar(5), D_id varchar(5), Room_no number, Date_of_adm varchar(8), Date_of_disch varchar(8),
primary key(Date_of_adm), foreign key (P_id) references Patient_info);

create table OPD(P_id varchar(5), D_id varchar(5), Date varchar(8), primary key(Date), foreign key (P_id) references
Patient_info);

create table Bill(Bill_no varchar(5), P_id varchar(5), lab_charges number, Doc_fees number, Medicine_charges number, primary
key(Bill_no));

insert into Patient_info values('P101', 'Bushra', 19, 9922714276, 'F', 'O+', 'Sugar', 430005);

insert into Patient_info values('P102', 'Siddhi', 29, 9730130988, 'F', 'A+', 'Accident', 370006);

insert into Patient_info values('P103', 'Ravi', 39, 9897030988, 'M', 'B+', 'Fever', 2356034);

insert into Patient_info values('P104', 'Priyank', 32, 9735780988, 'M', 'B+', 'Accident', 230534);

insert into Patient_info values('P105', 'Riya', 19, 8897030988, 'F', 'A+', 'Fever', 430005);

insert into city values(430005, 'abad', 'Maharashtr');

insert into city values(370006, 'Banglor', 'Telang');

insert into city values(230534, 'Mbai', 'Maharashtr');

insert into city values(435678, 'Patna', 'Bihar');

insert into Doctor_info values('D100', 'Dep_1', 'Ashok', 8176567890,'MBBS', 20000, 230534);

insert into Doctor_info values('D101', 'Dep_2', 'Aditi', 8759461258, 'Neuro', 35000, 435678);

insert into Department values('Dep_1', 'General', '1st floor', 500000);

insert into Department values('Dep_2', 'Surgery', '2nd floor', 800000);


insert into lab_report values('R1', 'L1', 'P101', 'D100');

insert into lab_report values('R2', 'L2', 'P102', 'D101');

insert into room values(111, 'AC', 'Available');

insert into room values(112, 'NON-AC', 'Available');

insert into OPD values('P101', 'D100', '6/9/2022');

insert into OPD values('P103', 'D101', '6/9/2022');

insert into IPD values('P104', 'D101', 112, '2/8/2022', '3/8/2022');

insert into IPD values('P102', 'D101', 111, '6/8/2022', '9/8/2022');

insert into IPD values('P101', 'D100', 111, '1/8/2022', '4/8/2022');

insert into Bill values('B11', 'P101', 1000, 300, 500);

insert into Bill values('B12', 'P102', 1500, 1500, 1600);

insert into Bill values('B13', 'P103', 800, 2500, 2500);

insert into Bill values('B14', 'P104', 500, 1500, 2000);

select * from Patient_info;

select * from City;

select * from Doctor_info;

select * from Department;

select * from room;

select * from IPD;

select * from Bill;


Equi Join:

select Patient_info.P_id, Bill_no, P_name, P_Ph_no from Patient_info, Bill where Patient_info.P_id =
Bill.P_id;

Trigger After insert:

create table Bill(Bill_no varchar(5), P_id varchar(5), lab_charges number, Doc_fees number,
Medicine_charges number, tot number, primary key(Bill_no));

insert into Bill values('B11', 'P101', 1000, 300, 500, 0);

select * from Bill;

create trigger trig_sum

after insert

on Bill

for each row

begin

update Bill set tot = lab_charges + Doc_fees + Medicine_charges;

end;

insert into Bill (Bill_no, P_id, lab_charges, Doc_fees, Medicine_charges) values('B12', 'P102', 1500, 1500,
1600);

insert into Bill (Bill_no, P_id, lab_charges, Doc_fees, Medicine_charges) values('B13', 'P103', 800, 2500,
2500);

insert into Bill (Bill_no, P_id, lab_charges, Doc_fees, Medicine_charges) values('B14', 'P104', 500, 1500,
2000);

select * from Bill;

Aggregate function:

select count(P_id), P_disease from Patient_info group by P_disease;


select Bill_no, P_id, max(tot) from Bill;

union:

select Patient_info.P_id, P_name, D_id from OPD, Patient_info where Patient_info.P_id = OPD.P_id

union

select Patient_info.P_id, P_name, D_id from IPD, Patient_info where Patient_info.P_id = IPD.P_id;

Nested SubQuery:

Select P_id, P_name, Patient_info.Zip_code, City from Patient_info, City where Patient_info.Zip_code =
City.Zip_code and zip_code in(‘P101’, (select Zip_code from Doctor_info where D_id = 'D100'));

You might also like