Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Employee Database Queries

1st Que
Consider the below relational database where primary keys are

Underlined and Construct SQL Query for below problem statements.

Employee (Eid, Ename, street, city, Sal)

Works (Eid, Cid, Duration)

Company (Cid, Cname, city)

1. Find all employee names whose salary is greater than 5000

2. Find all employee living in city Nagpur

3. Find name of all employee who do not work for first bank corporation.

4. Find name of all employee who work for first bank corporation

5. Find name, street, city of all employee who work for first bank Corporation

and earn more than 10,000

6. Find names of all emp who live in same city as that of their Company.

1. To find all employee names whose salary is greater than 5000:

SQLCopy code

SELECT Ename

FROM Employee

WHERE Sal > 5000;

1. To find all employee living in city Nagpur:

SQLCopy code

SELECT Ename

FROM Employee

WHERE city = 'Nagpur';

1. To find name of all employee who do not work for first bank corporation:
SQLCopy code

SELECT Ename

FROM Employee

WHERE Eid NOT IN (SELECT Eid FROM Works WHERE Cid = (SELECT Cid FROM Company
WHERE Cname = 'first bank corporation'));

1. To find name of all employee who work for first bank corporation:

SQLCopy code

SELECT Ename

FROM Employee

WHERE Eid IN (SELECT Eid FROM Works WHERE Cid = (SELECT Cid FROM Company WHERE
Cname = 'first bank corporation'));

1. To find name, street, city of all employee who work for first bank Corporation and earn
more than 10,000:

SQLCopy code

SELECT Employee.Ename, Employee.street, Employee.city

FROM Employee

INNER JOIN Works ON Employee.Eid = Works.Eid

INNER JOIN Company ON Works.Cid = Company.Cid

WHERE Company.Cname = 'first bank corporation' AND Employee.Sal > 10000;

1. To find names of all emp who live in same city as that of their Company:

SQLCopy code

SELECT Employee.Ename

FROM Employee

INNER JOIN Works ON Employee.Eid = Works.Eid

INNER JOIN Company ON Works.Cid = Company.Cid

WHERE Employee.city = Company.city;

2 nd Que
Consider following schema & answer following queryCustomer(cname,street,city)
Deposit(cname,accno)Loan(loanno,bname,amt)Borrow(cname,loanno)1. Find customer
name who lives in Nagpur2. Find all customer name having loan amount less than 20000 of
branch SBI3. Find names of customer having either account or loan or both4. Find all
customer having loan at bank5. Find all customers who have loan but no loan at bank6. Find
all city names containing character n 7. Find all branch names whose names are not ending
with a8. Find number of customers of bank SBI9. Find lowest amount of loan at bank with
name AXIS.10. Find customer name having loan amt > 50000

1. To find customer name who lives in Nagpur:

SQLCopy code

SELECT cname

FROM Customer

WHERE city = 'Nagpur';

1. To find all customer name having loan amount less than 20000 of branch SBI:

SQLCopy code

SELECT DISTINCT Customer.cname

FROM Customer

INNER JOIN Borrow ON Customer.cname = Borrow.cname

INNER JOIN Loan ON Borrow.loanno = Loan.loanno

WHERE Loan.amt < 20000 AND Loan.bname = 'SBI';

1. To find names of customer having either account or loan or both:

SQLCopy code

SELECT DISTINCT cname

FROM (SELECT cname FROM Deposit

UNION SELECT cname FROM Borrow) AS Cust;

1. To find all customer having loan at bank:

SQLCopy code

SELECT DISTINCT Customer.cname

FROM Customer
INNER JOIN Borrow ON Customer.cname = Borrow.cname;

1. To find all customers who have loan but no account at bank:

SQLCopy code

SELECT DISTINCT Customer.cname

FROM Customer

INNER JOIN Borrow ON Customer.cname = Borrow.cname

LEFT JOIN Deposit ON Customer.cname = Deposit.cname

WHERE Deposit.cname IS NULL;

1. To find all city names containing character n:

SQLCopy code

SELECT DISTINCT city

FROM Customer

WHERE city LIKE '%n%';

1. To find all branch names whose names are not ending with a:

SQLCopy code

SELECT DISTINCT bname

FROM Loan

WHERE bname NOT LIKE '%a';

1. To find number of customers of bank SBI:

SQLCopy code

SELECT COUNT(DISTINCT Customer.cname)

FROM Customer

INNER JOIN Deposit ON Customer.cname = Deposit.cname

INNER JOIN Loan ON Customer.cname = Loan.cname

WHERE Deposit.accno LIKE 'SBI%';

1. To find lowest amount of loan at bank with name AXIS:

SQLCopy code
SELECT MIN(amt)

FROM Loan

WHERE bname = 'AXIS';

1. To find customer name having loan amt > 50000:

SQLCopy code

SELECT DISTINCT Customer.cname

FROM Customer

INNER JOIN Loan ON Customer.cname = Loan.cname

WHERE Loan.amt > 50000;

3rd que
Consider below schema and Construct SQL Query for below problem statements.

Sailor (Sid, Sname, city, age)

Boat (Bid, bname, color)

Reserve (Sid, Bid, R date)

1. Find names of sailors who have reserved a Red and Green boat.

2. Find names of sailors who have reserve boat called ‘abc’.

3. Find sailor id of all sailors who have reserve Red boat but not green

4. Find names of sailors who have reserve at least 1 boat.

5. Find color of boat reserve by jack.

6. Find name of sailor who have reserve boat 103.

7. Find name of sailor whose name starts with a and age > 60.

8. Find name and id of the sailor who have reserve boat on 1-4-2014.

9. Find name of boat which is reserve on 1-5-2013.

10. Find name of sailor who have reserve boat on 5-5-2013 and bname start from I.

1. To find names of sailors who have reserved a Red and Green boat:
SQLCopy code

SELECT DISTINCT Sailor.Sname

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Boat.color IN ('Red', 'Green');

1. To find names of sailors who have reserve boat called ‘abc’:

SQLCopy code

SELECT DISTINCT Sailor.Sname

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Boat.bname = 'abc';

1. To find sailor id of all sailors who have reserve Red boat but not green:

SQLCopy code

SELECT DISTINCT Sailor.Sid

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Boat.color = 'Red' AND Sailor.Sid NOT IN

(SELECT Sailor.Sid

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Boat.color = 'Green');

1. To find names of sailors who have reserve at least 1 boat:

SQLCopy code
SELECT DISTINCT Sailor.Sname

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid;

1. To find color of boat reserve by jack:

SQLCopy code

SELECT Boat.color

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Sailor.Sname = 'jack';

1. To find name of sailor who have reserve boat 103:

SQLCopy code

SELECT Sailor.Sname

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

WHERE Reserve.Bid = 103;

1. To find name of sailor whose name starts with a and age > 60:

SQLCopy code

SELECT Sailor.Sname

FROM Sailor

WHERE Sailor.Sname LIKE 'a%' AND Sailor.age > 60;

1. To find name and id of the sailor who have reserve boat on 1-4-2014:

SQLCopy code

SELECT DISTINCT Sailor.Sid, Sailor.Sname

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid


WHERE Reserve.Rdate = '2014-04-01';

1. To find name of boat which is reserve on 1-5-2013:

SQLCopy code

SELECT Boat.bname

FROM Reserve

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Reserve.Rdate = '2013-05-01';

1. To find name of sailor who have reserve boat on 5-5-2013 and bname start from I:

SQLCopy code

SELECT Sailor.Sname

FROM Sailor

INNER JOIN Reserve ON Sailor.Sid = Reserve.Sid

INNER JOIN Boat ON Reserve.Bid = Boat.Bid

WHERE Reserve.Rdate = '2013-05-05' AND Boat.bname LIKE 'I%';

You might also like