DBMS Assignment 4
DBMS Assignment 4
Query:
CREATE TABLE SAILOR(SID VARCHAR(32) NOT NULL,SNAME VARCHAR(32),MNAME
VARCHAR(32),SURNAME VARCHAR(32),RATING INTEGER,AGE REAL, CONSTRAINT
PK_SAILOR PRIMARY KEY (SID));
CREATE TABLE BOAT(BID VARCHAR(32) NOT NULL,BNAME VARCHAR(32),COLOR
VARCHAR(32), CONSTRAINT PK_BOAT PRIMARY KEY (BID));
CREATE TABLE RESERVE(SID VARCHAR(32) NOT NULL,BID VARCHAR(32) NOT
NULL,R_DAY VARCHAR(32),CONSTRAINT PK_RESERVE PRIMARY KEY
(SID,BID,R_DAY),FOREIGN KEY (SID) REFERENCES SAILOR(SID),FOREIGN KEY (BID)
REFERENCES BOAT(BID));
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s22','Fredrico','','Roberts',7,45);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s31','Lubber','','Sheen',8,55.5);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s32','Charlotte','','Gordin',8,25.5);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s58','Mary','Beth','Lyon',10,35);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s64','Horatio','','Powell',7,35.4);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s71','Zorba','','Alex',10,16);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s29','Brutus','','Slater',1,33.8);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s95','Deep','Graceb','Davis',3,63.
5);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s74','Horatio','','Forrest',9,35);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s85','Sara','Art','Powell',3,25.5);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s80','Deep','Kumar','Kumar',6,17
);
INSERT INTO
SAILOR(SID,SNAME,MNAME,SURNAME,RATING,AGE)VALUES('s87','Deep','Kumar','JHA',8,51);
INSERT INTO BOAT(BID,BNAME,COLOR)VALUES('b11','Interlake','blue');
INSERT INTO BOAT(BID,BNAME,COLOR)VALUES('b12','Interlake','red');
INSERT INTO BOAT(BID,BNAME,COLOR)VALUES('b13','Clipper','green');
INSERT INTO BOAT(BID,BNAME,COLOR)VALUES('b14','Marine','red');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s22','b11','10-OCT-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s22','b13','10-AUG-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s22','b12','10-OCT-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s22','b14','10-JUL-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s31','b12','11-OCT-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s31','b12','11-JUN-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s31','b14','11-DEC-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s64','b11','09-MAY-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s64','b12','09-AUG-98');
INSERT INTO RESERVE(SID,BID,R_DAY)VALUES('s74','b13','09-AUG-98');
10)Find names of sailors who have reserved a red boat or a green boat.
Query:
select distinct s.sname from SAILOR s,BOAT b, RESERVE r where s.sid=r.sid and r.bid=b.bid and
(b.color='red' or b.color='green');
Output:
SNAM
E
Fredric
o
Lubber
Horatio
Deep
11)Find names of sailors who have reserved a red boat and a green boat.
Query:
select s1.sname from SAILOR s1,RESERVE r1,BOAT b1 where s1.sid=r1.sid and r1.bid=b1.bid and
b1.color='red' intersect select s2.sname from SAILOR s2,RESERVE r2,BOAT b2 where s2.sid=r2.sid
and r2.bid=b2.bid and b2.color='green';
Output:
SNAM
E
Fredric
o
Horatio
12)Find names of sailors who have reserved a red boat but not a green boat.
Query:
select distinct s1.sname from SAILOR s1,RESERVE r1,BOAT b1 where s1.sid=r1.sid and
r1.bid=b1.bid and b1.color='red' minus select distinct s2.sname from SAILOR s2,RESERVE
r2,BOAT b2 where s2.sid=r2.sid and r2.bid=b2.bid and b2.color='green';
Output:
SNAM
E
Deep
Lubber