0% found this document useful (0 votes)
82 views21 pages

Dokumen - Tips Dbms Worksheet

The document describes tables and data for a banking database including deposits, branches, customers, and loans. It includes sample data and queries to retrieve information from the tables. Some key points: - Tables are created for deposits, branches, customers, and loans - Sample data is inserted into the tables - Queries are written to retrieve information by joining tables, such as finding customers in a certain city or borrowers with a deposit over a certain amount - Other queries filter and aggregate data, such as finding the highest loan amounts

Uploaded by

Jitu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
82 views21 pages

Dokumen - Tips Dbms Worksheet

The document describes tables and data for a banking database including deposits, branches, customers, and loans. It includes sample data and queries to retrieve information from the tables. Some key points: - Tables are created for deposits, branches, customers, and loans - Sample data is inserted into the tables - Queries are written to retrieve information by joining tables, such as finding customers in a certain city or borrowers with a deposit over a certain amount - Other queries filter and aggregate data, such as finding the highest loan amounts

Uploaded by

Jitu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

ADVANCED DBMS WORK SHEET – I

By
G.BAKTAVATCHALAM (08MW03)

TABLES:

1) create table deposit(actno varchar2(5),cname varchar2(18),bname varchar2(18),amount number(8,2),adate


date);
2) create table branch(bname varchar2(18),city varchar2(18));
3) create table customer(cname varchar2(18), city varchar2(18));
4) create table borrow(loanno varchar2(5),cname varchar2(18),bname varchar2(18),amount number(8,2));

DEPOSIT TABLE:

1) insert into deposit values('100','Anil','VRCE',1000.00,'1-mar-95');


2) insert into deposit values('101','Sunil','AJNI',5000.00,'4-jan-96');
3) insert into deposit values('102','Mehul','KAROLBAGH',3500.00,'17-nov-95');
4) insert into deposit values('104','Madhuri','CHANDNI',1200.00,'17-dec-95');
5) insert into deposit values('105','Pramod','M.G.ROAD',3000.00,'27-mar-96');
6) insert into deposit values('106','Sandip','ANDHERI',2000.00,'31-mar-96');
7) insert into deposit values('107','Shivani','VIRAR',1000.00,'5-sep-95');
8) insert into deposit values('108','Kranti','NEHRU PLACE',5000.00,'2-jul-95');
9) insert into deposit values('109','Minu','POWAI',7000.00,'10-aug-95');

BRANCH TABLE:

1) insert into branch values('VRCE','Nagpur');


2) insert into branch values('AJNI','Nagpur');
3) insert into branch values('KAROLBAGH','Delhi');
4) insert into branch values('CHANDNI','Delhi');
5) insert into branch values('DHARAMPETH','Nagpur');
6) insert into branch values('M.G.ROAD','Bangalore');
7) insert into branch values('ANDHERI','Bombay');
8) insert into branch values('VIRAR','Bombay');
9) insert into branch values('NEHRU PLACE','Delhi');
10) insert into branch values('POWAI','Bombay');

CUSTOMER TABLE:

1) insert into customer values('Anil','Calcutta');


2) insert into customer values('Sunil','Delhi');
3) insert into customer values('Mehul','Baroda');
4) insert into customer values('Mandar','Patna');
5) insert into customer values('Madhuri','Nagpur');
6) insert into customer values('Pramod','Nagpur');
7) insert into customer values('Sandip','Surat');
8) insert into customer values('Shivani','Bombay');
9) insert into customer values('Kranti','Bombay');
10) insert into customer values('Naren','Bombay');

BORROW TABLE:

1) insert into borrow values('201','Anil','VRCE',1000);


2) insert into borrow values('206','Mehul','AJNI',5000);
3) insert into borrow values('311','Sunil','DHARAMPETH',3000);
4) insert into borrow values('321','Madhuri','ANDHERI',2000);
5) insert into borrow values('375','Pramod','VIRAR',8000);
6) insert into borrow values('481','Kranti','NEHRU PLACE',3000);

QUERIES:

1) select * from deposit;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------
100 Anil VRCE 1000 01-MAR-95
101 Sunil AJNI 5000 04-JAN-96
102 Mehul KAROLBAGH 3500 17-NOV-95
104 Madhuri CHANDNI 1200 17-DEC-95
105 Pramod M.G.ROAD 3000 27-MAR-96
106 Sandip ANDHERI 2000 31-MAR-96
107 Shivani VIRAR 1000 05-SEP-95
108 Kranti NEHRU PLACE 5000 02-JUL-95
109 Minu POWAI 7000 10-AUG-95

2) select * from borrow;

LOANNO CNAME BNAME AMOUNT


---------- ------------------ ------------------ ----------
201 Anil VRCE 1000
206 Mehul AJNI 5000
311 Sunil DHARAMPETH 3000
321 Madhuri ANDHERI 2000
375 Pramod VIRAR 2000
481 Kranti NEHRU PLACE 3000

3) select * from customer;

CNAME CITY
------------------ ------------------
Anil Calcutta
Sunil Delhi
Mehul Baroda
Mandar Patna
Madhuri Nagpur
Pramod Nagpur
Sandip Surat
Shivani Bombay
Kranti Bombay
Naren Bombay

4) select * from branch;

BNAME CITY
------------------ ------------------
VRCE Nagpur
AJNI Nagpur
KAROLBAGH Delhi
CHANDNI Delhi
DHARAMPETH Nagpur
M.G.Road Bangalore
ANDHERI Bombay
VIRAR Bombay
NEHRU PLACE Delhi
POWAI Bombay

5) select actno, amount from deposit;

ACTNO AMOUNT
----- ----------
100 1000
101 5000
102 3500
104 1200
105 3000
106 2000
107 1000
108 5000
109 7000

6) select cname, actno from deposit;

CNAME ACTNO
------------------ -----
Anil 100
Sunil 101
Mehul 102
Madhuri 104
Pramod 105
Sandip 106
Shivani 107
Kranti 108
Minu 109

7) select cname from customer;

CNAME
------------------
Anil
Sunil
Mehul
Mandar
Madhuri
Pramod
Sandip
Shivani
Kranti
Naren

8) select bname from branch;


BNAME
------------------
VRCE
AJNI
KAROLBAGH
CHANDNI
DHARAMPETH
M.G.Road
ANDHERI
VIRAR
NEHRU PLACE
POWAI

9) select cname from borrow;

CNAME
------------------
Anil
Mehul
Sunil
Madhuri
Pramod
Kranti

10) select cname from customer where city='Nagpur';

CNAME
------------------
Madhuri
Pramod

11) select cname from deposit where amount>'4000';

CNAME
------------------
Sunil
Kranti
Minu

12) select adate from deposit where cname='Anil';

ADATE
---------
01-MAR-95

13) select bname from branch where city='Bombay';

BNAME
------------------
ANDHERI
VIRAR
POWAI

14) select cname from borrow where loanno='321';


CNAME
------------------
Madhuri

15) select cname from deposit where bname='VRCE';

CNAME
------------------
Anil

16) select bname from branch where city='Delhi';

BNAME
------------------
KAROLBAGH
CHANDNI
NEHRU PLACE

17) select cname from deposit where adate>'1-DEC-95';

CNAME
------------------
Sunil
Madhuri
Pramod
Sandip

18) select actno,amount from deposit where adate between '01-DEC-95' and '01-MAY-96';

ACTNO AMOUNT
----- ----------
101 5000
104 1200
105 3000
106 2000

19) select city from branch where bname='KAROLBAGH';

CITY
------------------
Delhi

20) select * from deposit where cname='Anil';

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------
100 Anil VRCE 1000 01-MAR-95

JOIN AND CARTESIAN PRODUCT:

1)GIVE NAME OF CUSTOMER HAVING LIVING CITY BOMBAY AND BRANCH CITY NAGPUR.

QUERY: SELECT D1.CNAME,D1.BNAME,C1.CNAME,C1.CITY,B1.CITY,B1.BNAME FROM DEPOSIT


D1,CUSTOMER C1,BRANCH B1 WHERE C1.CITY = 'BOMBAY' AND B1.CITY = 'NAGPUR' AND
D1.CNAME = C1.CNAME AND D1.BNAME = B1.BNAME;
2) GIVE NAME OF BORROWERS HAVING DEPOSIT AMOUNT GREATER THAN 1000 AND LOAN AMOUNT
GREATER THAN 2000.

QUERY: SELECT BR1.CNAME, BR1.AMOUNT, D1.CNAME, D1.AMOUNT FROM BORROW


BR1,DEPOSIT D1 WHERE D1.CNAME = BR1.CNAME AND D1.AMOUNT > 1000 AND BR1.AMOUNT >
2000;

CNAME AMOUNT CNAME AMOUNT


------------------ ---------- ------------------ --------------------------
KRANTI 3000 KRANTI 5000
MEHUL 5000 MEHUL 3500
PRAMOD 8000 PRAMOD 3000
SUNIL 3000 SUNIL 5000

3)GIVE NAME OF DEPOSITORS HAVING SAME BRANCH AS BRANCH OF SUNIL.

QUERY: SELECT D1.CNAME FROM DEPOSIT D1 WHERE D1.BNAME IN (SELECT D2.BNAME


FROM DEPOSIT D2 WHERE D2.CNAME = 'SUNIL');

CNAME
------------------
SUNIL

4)GIVE NAME OF BORROWERS HAVING LOAN AMOUNT GREATER THAN AMOUNT OF PRAMOD.

QUERY: SELECT BR1.CNAME,BR1.AMOUNT FROM BORROW BR1 WHERE BR1.AMOUNT > ALL
(SELECT BR2.AMOUNT FROM BORROW BR2 WHERE BR2.CNAME = 'PRAMOD');

NO ROWS SELECTED

SELECT B.CNAME FROM BORROW B WHERE AMOUNT > (SELECT AMOUNT FROM BORROW WHERE
CNAME='MADHURI' AND AMOUNT=2000.00);

CNAME
----------------
MEHUL
SUNIL
PRAMOD
KRANTI

5)GIVE NAME OF CUSTOMER LIVING IN SAME CITY WHERE BRANCH OF DEPOSITOR SUNIL IS
LOCATED.

QUERY: SELECT C.CNAME FROM CUSTOMER C WHERE C.CITY IN (SELECT B.CITY FROM
BRANCH B WHERE B.BNAME IN (SELECT D.BNAME FROM DEPOSIT D WHERE D.CNAME='SUNIL'));

CNAME
------------------
MADHURI
PRAMOD

6)GIVE LOANNO,LOAN AMOUNT OF BORROWERS HAVING SAME BRANCH WHERE SUNIL IS HAVING
BRANCH.
QUERY: SELECT BR1.LOANNO,BR1.AMOUNT FROM BORROW BR1 WHERE BR1.BNAME
(SELECT D1.BNAME FROM DEPOSIT D1 WHERE D1.CNAME = 'SUNIL');

LOANN AMOUNT
---------- ----------
206 5000

7)GIVE LOANNO,LOAN AMOUNT,ACCOUNT NO,DEPOSIT AMOUNT OF CUSTOMER LIVING IN CITY


NAGPUR.

QUERY: SELECT BR1.LOANNO , BR1.AMOUNT , D1.ACTNO , D1.AMOUNT FROM DEPOSIT


D1,BORROW BR1,CUSTOMER C1 WHERE C1.CNAME = D1.CNAME AND D1.CNAME = BR1.CNAME AND
C1.CITY = 'NAGPUR'

LOANN AMOUNT ACTNO AMOUNT


----- ---------- ----- ------------------ ----------------
321 2000 104 1200
375 8000 105 3000

8)GIVE LOANNO,LOAN AMOUNT, ACCOUNT NO, DEPOSIT AMOUNT OF CUSTOMER HAVING BRANCH
LOCATED AT BOMBAY.

QUERY: SELECT B.LOANNO,B.AMOUNT,D.ACTNO,D.AMOUNT,D.CNAME,B.CNAME FROM


BORROW B,DEPOSIT D WHERE D.BNAME IN (SELECT BNAME FROM BRANCH WHERE
CITY='BOMBAY') AND D.BNAME=B.BNAME;

LOANN AMOUNT ACTNO AMOUNT CNAME CNAME


----- ---------- ----- ---------- ------------------ ----------------------------------------
321 2000 106 2000 SANDIP MADHURI
375 8000 107 1000 SHIVANI PRAMOD

9)GIVE LOANNO,LOAN AMOUNT,ACCOUNT NO,DEPOSIT AMOUNT,BRANCH NAME, BRANCH CITY AND


LIVING CITY OF PRAMOD.

QUERY: SELECT BR1.LOANNO , BR1.AMOUNT , D1.ACTNO , D1.AMOUNT , D1.BNAME


,B1.CTTY,C1.CITY FROM BORROW BR1,DEPOSIT D1 , BRANCH B1, CUSTOMER C1 WHERE C1.CNAME
= 'PRAMOD' AND D1.CNAME = C1.CNAME AND
D1.CNAME=BR1.CNAME AND D1.BNAME = B1.BNAME;

LOANN AMOUNT ACTNO AMOUNT BNAME CITY CITY


----- ---------- ----- ---------- ------------------ ------------------ ------------------ ---------------
375 8000 105 3000 M.G.ROAD Bangalore Nagpur

10)GIVE DEPOSIT DETAILS AND LOAN DETAILS OF CUSTOMER IN SAME CITY WHERE PRAMOD IS
LIVING.

QUERY:
SELECT D1.ACTNO , D1.CNAME,D1.BNAME ,D1.AMOUNT ,D1.ADATE , BR1.LOANNO ,
BR1.BNAME , BR1.AMOUNT FROM DEPOSIT D1 , BORROW BR1 , CUSTOMER C1 WHERE C1.CNAME =
D1.CNAME AND D1.CNAME = BR1.CNAME AND C1.CITY IN (SELECT C2.CITY FROM CUSTOMER C2
WHERE C2.CNAME = 'PRAMOD');

ACTNO CNAME BNAME AMOUNT ADATE LOANN BNAME AMOUNT


----- ------------------ ------------------ ---------- --------- ----- ------------------ ----------
104 MADHURI CHANDNI 1200 17-DEC-95 321 ANDHERI 2000
105 PRAMOD M.G.ROAD 3000 27-MAR-96 375 VIRAR 8000

11)GIVE NAME OF DEPOSITORS HAVING SAME BRANCH CITY AS MR. SUNIL AND HAVING SAME
LIVING CITY AS MR. ANIL.

QUERY:
SELECT D1.CNAME FROM DEPOSIT D1,CUSTOMER C1,BRANCH B1 WHERE D1.CNAME =
C1.CNAME AND D1.BNAME = B1.BNAME AND B1.CITY IN (SELECT B2.CITY FROM BRANCH
B2,DEPOSIT D2 WHERE D2.CNAME = 'SUNIL' AND D2.BNAME = B2.BNAME) AND C1.CITY IN (SELECT
C2.CITY FROM CUSTOMER C2 WHERE C2.CNAME = 'ANIL');
CNAME
----------
ANIL

12) GIVE NAME OF DEPOSITORS HAVING AMOUNT GREATER THAN 1000 AND HAVING SAME LIVING
CITY AS MR. PRAMOD.

QUERY:
SELECT D1.CNAME FROM DEPOSIT D1,CUSTOMER C1 , CUSTOMER C2 WHERE C1.CITY =
C2.CITY AND C2.CNAME = 'PRAMOD' AND C1.CNAME = D1.CNAME AND D1.AMOUNT > 1000;

CNAME
---------------
MADHURI
PRAMOD

13)GIVE CITY OF CUSTOMER HAVING BRANCH CITY SAME AS MR. PRAMOD.

QUERY:
SELECT C1.CITY FROM CUSTOMER C1,DEPOSIT D1,DEPOSIT D2,BRANCH B1,BRANCH B2
WHERE D1.BNAME=B1.BNAME AND D2.BNAME = B2.BNAME AND D2.CNAME = 'PRAMOD' AND
B1.CITY = B2.CITY AND C1.CNAME = D1.CNAME;

CITY
-----------
NAGPUR

14)GIVE BRANCH CITY AND LIVING CITY OF PRAMOD.

QUERY:
SELECT B1.CITY , C1.CITY FROM BRANCH B1,CUSTOMER C1, DEPOSIT D1 WHERE C1.CNAME
= 'PRAMOD' AND C1.CNAME = D1.CNAME AND D1.BNAME = B1.BNAME;

CITY CITY
------------- ---- - ------------------
BANGALORE NAGPUR

15)GIVE BRANCH CITY OF SUNIL AND BRANCH CITY OF ANIL.

QUERY:
SELECT B1.CITY FROM DEPOSIT D1, BRANCH B1 WHERE D1.BNAME = B1.BNAME AND
D1.CNAME IN (‘SUNIL’ ,'ANIL');

CITY
---------
NAGPUR
NAGPUR

16) GIVE LIVING CITY OF ANIL AND LIVING CITY OF SUNIL.

QUERY: SELECT C1.CNAME, C1.CITY FROM CUSTOMER C1 WHERE C1.CNAME = 'ANIL' OR


C1.CNAME = 'SUNIL';

CNAME CITY
------------------ ------------
ANIL CALCUTTA
SUNIL DELHI

SET OPERATIONS:

1)LIST ALL THE CUSTOMER WHO ARE DEPOSITORS BUT NOT BORROWERS.

QUERY:SELECT CNAME FROM DEPOSIT MINUS (SELECT CNAME FROM BORROW);

CNAME
-----------
MINU
SANDIP
SHIVANI

2)LIST ALL THE CUSTOMER WHO ARE DEPOSITORS AND BORROWERS.

QUERY:SELECT CNAME FROM DEPOSIT UNION (SELECT CNAME FROM BORROW);

CNAME
------------------
ANIL
KRANTI
MADHURI
MEHUL
MINU
PRAMOD
SANDIP
SHIVANI
SUNIL

3)LIST ALL THE CUSTOMER WITH THEIR AMOUNT WHO ARE BORROWERS OR DEPOSITORS AND
LIVING IN CITY NAGPUR.

QUERY:SELECT D1.CNAME,D1.AMOUNT FROM DEPOSIT D1, CUSTOMER C1 WHERE C1.CITY =


'NAGPUR' AND D1.CNAME = C1.CNAME UNION ALL (SELECT BR1.CNAME,BR1.AMOUNT FROM
BORROW BR1, CUSTOMER C2 WHERE C2.CITY = 'NAGPUR' AND BR1.CNAME=C2.CNAME);

CNAME AMOUNT
------------------ ----------
MADHURI 1200
PRAMOD 3000
MADHURI 2000
PRAMOD 8000

4)LIST ALL THE DEPOSITORS HAVING DEPOSIT IN ALL THE BRANCHES WHERE SUNIL IS HAVING
BRANCHES.
QUERY:SELECT D1.CNAME FROM DEPOSIT D1 WHERE D1.BNAME IN (SELECT D2.BNAME FROM
DEPOSIT D2 WHERE D2.CNAME = 'SUNIL' );

CNAME
-----------
SUNIL

5)LIST ALL THE CUSTOMER LIVING IN CITY NAGPUR AND HAVING BRANCH CITY BOMBAY OR DELHI.
QUERY:
SELECT C1.CNAME FROM CUSTOMER C1,DEPOSIT D1, BRANCH B1 WHERE C1.CITY = 'NAGPUR' AND
C1.CNAME = D1.CNAME AND D1.BNAME = B1.BNAME AND B1.CITY IN ('BOMBAY','DELHI');

CNAME
-----------
MADHURI

6)LIST ALL THE CUSTOMER NAME AMOUNT OF DEPOSITOR LIVING IN CITY WHERE ANIL OR SUNIL IS
LIVING.

QUERY:SELECT D1.CNAME , D1.AMOUNT FROM DEPOSIT D1, CUSTOMER C1


WHERE C1.CNAME = D1.CNAME AND C1.CITY IN
(SELECT C2.CITY FROM CUSTOMER C2 WHERE C2.CNAME IN ('SUNIL','ANIL'));

CNAME AMOUNT
------------------ ----------
ANIL 1000
SUNIL 5000

7)LIST AMOUNT OF DEPOSITORS LIVING IN CITY WHERE ANIL IS LIVING.

QUERY:
SELECT D1.AMOUNT FROM DEPOSIT D1, CUSTOMER C1 WHERE D1.CNAME = C1.CNAME AND
C1.CITY IN (SELECT C2.CITY FROM CUSTOMER C2 WHERE C2.CNAME = 'Anil');

AMOUNT
------------------
1000

8)LIST THE CITIES WHICH ARE BRANCH CITY OF ANIL OR LIVING CITY OF SUNIL.

QUERY:SELECT B1.CITY FROM BRANCH B1,DEPOSIT D1 WHERE D1.CNAME IN ('ANIL') AND


D1.BNAME = B1.BNAME UNION (SELECT C1.CITY FROM CUSTOMER C1 WHERE C1.CNAME IN
('SUNIL'));

CITY
-------------
DELHI
NAGPUR

9) LIST ALL THE CITIES WHERE BRANCHES OF ANIL AND SUNIL IS LOCATED.

QUERY:SELECT B1.CITY FROM BRANCH B1 WHERE B1.BNAME IN


(SELECT D1.BNAME FROM DEPOSIT D1 WHERE D1.CNAME IN ('ANIL','SUNIL'));

CITY
------------
NAGPUR
NAGPUR

10)LIST THE CUSTOMER WHO ARE BORROWERS AND DEPOSITORS AND HAVING SAME BRANCH
CITY AS MR. ANIL.

QUERY:SELECT C1.CNAME FROM CUSTOMER C1,DEPOSIT D1 , BRANCH B1 WHERE C1.CNAME IN


((SELECT BR1.CNAME FROM BORROW BR1) INTERSECT (SELECT D2.CNAME FROM DEPOSIT D2))
AND D1.CNAME = C1.CNAME AND D1.BNAME = B1.BNAME AND B1.CITY IN (SELECT B2.CITY FROM
DEPOSIT D3 , BRANCH B2 WHERE D3.CNAME = 'ANIL' AND D3.BNAME = B2.BNAME);

CNAME
--------
ANIL
SUNIL

AGGREGATE FUNCTIONS:

1) LIST TOTAL LOAN.

QUERY:SELECT SUM (AMOUNT) FROM BORROW;

SUM(AMOUNT)
-----------
22000

2)LIST TOTAL DEPOSIT OF CUSTOMER LIVING IN CITY NAGPUR.

QUERY:SELECT SUM(D1.AMOUNT) FROM DEPOSIT D1 , CUSTOMER C1 WHERE C1.CITY = 'NAGPUR'


AND C1.CNAME = D1.CNAME;

SUM(D1.AMOUNT)
--------------
4200

3)LIST MAXIMUM DEPOSIT OF CUSTOMER LIVING IN BOMBAY.

QUERY:SELECT MAX(D1.AMOUNT) FROM DEPOSIT D1 , CUSTOMER C1 WHERE C1.CITY = 'Bombay'


AND C1.CNAME = D1.CNAME;

MAX(D1.AMOUNT)
--------------
5000

4) LIST TOTAL DEPOSIT OF CUSTOMER LIVING IN SAME CITY WHERE SUNIL IS LIVING.

QUERY:SELECT SUM(D1.AMOUNT) FROM DEPOSIT D1,CUSTOMER C1 WHERE D1.CNAME=C1.CNAME


AND C1.CITY IN (SELECT C2.CITY FROM CUSTOMER C2 WHERE C2.CNAME = 'Sunil');

SUM(D1.AMOUNT)
--------------
5000
5)COUNT TOTAL NUMBER OF BRANCH CITIES.

QUERY:SELECT COUNT(DISTINCT (CITY)) FROM BRANCH ;


COUNT(DISTINCT(CITY))
--------------------------------------

4
6)GIVE BRANCH NAME AND BRANCHWISE DEPOSIT.

QUERY:SELECT BNAME , SUM(AMOUNT) FROM DEPOSIT GROUP BY BNAME;

BNAME SUM(AMOUNT)
------------------ ------------------------
AJNI 5000
ANDHERI 2000
CHANDNI 1200
KAROLBAGH 3500
M.G.ROAD 3000
NEHRU PLACE 5000
POWAI 7000
VIRAR 1000
VRCE 1000

7)GIVE CITY NAME AND CITYWISE DEPOSIT.

QUERY:SELECT C1.CITY , SUM(D1.AMOUNT) FROM CUSTOMER C1 , DEPOSIT D1 WHERE D1.CNAME =


C1.CNAME GROUP BY C1.CITY;

CITY SUM(D1.AMOUNT)
------------------ -------------------------
BARODA 3500
BOMBAY 6000
CALCUTTA 1000
DELHI 5000
NAGPUR 4200
SURAT 2000

8)GIVE MAXIMUM LOAN FROM BRANCH VRCE.

QUERY:SELECT MAX(AMOUNT) FROM BORROW WHERE BNAME ='VRCE';

MAX(AMOUNT)
--------------------
1000

9) GIVE LIVING CITYWISE LOAN OF BORROWERS.

QUERY:SELECT SUM(BR1.AMOUNT) FROM BORROW BR1, CUSTOMER C1 WHERE C1.CNAME


=BR1.CNAME GROUP BY C1.CITY;

SUM(BR1.AMOUNT)
---------------
5000
3000
1000
3000
10000

10) GIVE NUMBER OF CUSTOMER WHO ARE DEPOSITORS AND BORROWERS.

QUERY:SELECT COUNT(DISTINCT (CNAME)) FROM CUSTOMER WHERE CNAME IN


((SELECT CNAME FROM DEPOSIT) INTERSECT (SELECT CNAME FROM BORROW));

COUNT(DISTINCT(CNAME))
---------------------------------------
6
GROUP BY AND HAVING FUNCTION:

1)LIST THE BRANCHES HAVING SUM OF DEPOSIT MORE THAN 50000.

QUERY:SELECT BNAME FROM DEPOSIT GROUP BY BNAME HAVING SUM(AMOUNT) > 5000;

BNAME
-----------
POWAI

2)LIST THE BRANCHES HAVING SUM OF DEPOSIT MORE THAN 50000 AND LOCATED IN CITY BOMBAY.

QUERY:SELECT D1.BNAME FROM DEPOSIT D1, BRANCH B1 WHERE D1.BNAME = B1.BNAME AND
B1.CITY ='BOMBAY' GROUP BY D1.BNAME HAVING SUM(D1.AMOUNT) > 5000;

BNAME
-----------
POWAI

3)LIST THE NAME OF CUSTOMER HAVING MAXIMUM DEPOSIT.

QUERY:SELECT D1.CNAME FROM DEPOSIT D1 WHERE D1.AMOUNT IN


(SELECT MAX(D2.AMOUNT) FROM DEPOSIT D2);

CNAME
-----------
MINU

4) LIST THE NAME OF BRANCH HAVING HIGHEST NUMBER OF DEPOSITORS.

QUERY:SELECT D1.BNAME FROM DEPOSIT D1 GROUP BY D1.BNAME HAVING COUNT(D1.CNAME) > =


ALL (SELECT COUNT(D2.CNAME) FROM DEPOSIT D2 GROUP BY D2.BNAME);

BNAME
------------------
AJNI
ANDHERI
CHANDNI
KAROLBAGH
M.G.ROAD
NEHRU PLACE
POWAI
VIRAR
VRCE
9 rows selected.

5) COUNT THE NUMBER OF DEPOSITORS LIVING IN NAGPUR.

QUERY:SELECT COUNT (D2.CNAME) FROM DEPOSIT D2, CUSTOMER C1 WHERE


C1.CITY = 'Nagpur' AND C1.CNAME = D2.CNAME;

COUNT(D2.CNAME)
---------------------------
2

6) GIVE NAME OF CUSTOMER HAVING HIGHEST DEPOSIT IN THE CITY WHERE BRANCH OF SUNIL IS
LOCATED.

QUERY:SELECT D1.CNAME FROM DEPOSIT D1, BRANCH B1 WHERE D1.BNAME = B1.BNAME AND
D1.AMOUNT >=ALL (SELECT D2.AMOUNT FROM DEPOSIT D2, BRANCH B2 WHERE D2.CNAME =
'SUNIL' AND D2.BNAME = B2.BNAME AND B1.BNAME = B2.BNAME);

CNAME
------------------
SUNIL
SANDIP
MADHURI
MEHUL
PRAMOD
KRANTI
MINU
SHIVANI
ANIL

9 rows selected.

7) GIVE NAME OF CUSTOMER HAVING MORE DEPOSIT THAN THE AVERAGE DEPOSIT IN THEIR
RESPECTIVE BRANCHES.

QUERY:SELECT D1.CNAME FROM DEPOSIT D1 WHERE D1.AMOUNT >= ALL (SELECT


AVG(D2.AMOUNT) FROM DEPOSIT D2 WHERE D1.BNAME = D2.BNAME GROUP BY D2.BNAME);

CNAME
-----------------
ANIL
SUNIL
MEHUL
MADHURI
PRAMOD
SANDIP
SHIVANI
KRANTI
MINU

9 rows selected.

8) GIVE NAME OF CITY HAVING MORE CUSTOMER LIVING THAN NAGPUR.


QUERY:SELECT C1.CITY FROM CUSTOMER C1 GROUP BY C1.CITY HAVING COUNT (C1.CNAME) >
ALL (SELECT COUNT(C2.CNAME) FROM CUSTOMER C2 WHERE C2.CITY = 'NAGPUR');

CITY
-----------
BOMBAY

9) GIVE NAME OF BRANCHES HAVING NUMBER OF DEPOSITORS MORE THAN NUMBER OF


BORROWERS.

QUERY:SELECT D1.BNAME FROM DEPOSIT D1 GROUP BY D1.BNAME HAVING COUNT(D1.CNAME) >


ALL (SELECT COUNT(BR1.CNAME) FROM BORROW BR1 WHERE BR1.BNAME = D1.BNAME GROUP
BY BR1.BNAME);

BNAME
-----------
CHANDNI
KAROLBAGH
M.G.ROAD
POWAI

10) GIVE NAME OF CUSTOMER LIVING IN SAME CITY WHERE MAXIMUM DEPOSITORS ARE LOCATED.

QUERY:SELECT C1.CNAME FROM CUSTOMER C1 WHERE C1.CITY IN (SELECT C2.CITY FROM


DEPOSIT D1, CUSTOMER C2 WHERE C2.CNAME = D1.CNAME GROUP BY C2.CITY HAVING
COUNT(D1.CNAME) >= ALL (SELECT COUNT(D2.CNAME) FROM DEPOSIT D2,CUSTOMER C3 WHERE
D2.CNAME = C3.CNAME GROUP BY C3.CITY));

CNAME
---------------
SHIVANI
KRANTI
NAREN
MADHURI
PRAMOD

UPDATE QUERIES:

1)GIVE 10% INTEREST TO ALL DEPOSITORS.

QUERY:UPDATE DEPOSIT SET AMOUNT = AMOUNT * 1.1;

9 rows updated.

SQL> SELECT * FROM DEPOSIT;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ------------------------------
100 ANIL VRCE 1100 01-MAR-95
101 SUNIL AJNI 5500 04-JAN-96
102 MEHUL KAROLBAGH 3850 17-NOV-95
104 MADHURI CHANDNI 1320 17-DEC-95
105 PRAMOD M.G.ROAD 3300 27-MAR-96
106 SANDIP ANDHERI 2200 31-MAR-96
107 SHIVANI VIRAR 1100 05-SEP-95
108 KRANTI NEHRU PLACE 5500 02-JUL-95
109 MINU POWAI 7700 10-AUG-95

9 rows selected.

2)GIVE 10% INTEREST TO ALL DEPOSITORS HAVING BRANCH VRCE.

QUERY:UPDATE DEPOSIT SET AMOUNT = AMOUNT * 1.1 WHERE BNAME = 'VRCE';

1 row updated.

SQL> SELECT * FROM DEPOSIT WHERE BNAME = 'VRCE';

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ----------------------------------
100 ANIL VRCE 1210 01-MAR-95

3)GIVE 10% INTEREST TO ALL DEPOSITORS LIVING IN NAGPUR.

QUERY:UPDATE DEPOSIT SET AMOUNT = AMOUNT * 1.1 WHERE CNAME IN


(SELECT CNAME FROM CUSTOMER WHERE CITY = 'NAGPUR');

2 rows updated.

SQL> SELECT * FROM DEPOSIT WHERE CNAME IN (SELECT CNAME FROM CUSTOMER WHERE CITY
= 'NAGPUR');

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------
104 MADHURI CHANDNI 1452 17-DEC-95
105 PRAMOD M.G.ROAD 3630 27-MAR-96

4) ADD TO DEPOSIT OF ANIL HUNDRED RUPEES AND ASSIGN IT TO SUNIL.

QUERY:UPDATE DEPOSIT SET AMOUNT = ( SELECT AVG(AMOUNT) FROM DEPOSIT WHERE CNAME =
'Anil') WHERE CNAME = 'Sunil';

1 row updated.

UPDATE DEPOSIT SET AMOUNT = AMOUNT + 100 WHERE CNAME = 'Sunil';

1 row updated.

UPDATE DEPOSIT SET AMOUNT = AMOUNT + 100 WHERE CNAME = 'Anil';

1 row updated.

6)CHANGE THE DEPOSIT OF VRCE BRANCH TO 1000 AND CHANGE THE BRANCH AS
VRCE_AMBAZARI.

QUERY:UPDATE DEPOSIT SET AMOUNT = 1000,BNAME = 'VRCE_AMBAZARI' WHERE BNAME =


'VRCE';

1 row updated.
SQL> SELECT * FROM DEPOSIT WHERE BNAME = 'VRCE_AMBAZARI';

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ----------------------------
100 Anil VRCE_AMBAZARI 1000 01-MAR-95

7) UPDATE DEPOSIT OF ANIL , GIVE HIM MAXIMUM DEPOSIT FROM DEPOSITORS IN LIVING CITY
NAGPUR.

QUERY:UPDATE DEPOSIT SET AMOUNT = (SELECT MAX(AMOUNT) FROM DEPOSIT,


CUSTOMER WHERE DEPOSIT.CNAME = CUSTOMER.CNAME AND CUSTOMER.CITY= 'Nagpur')WHERE
CNAME = 'Anil';

1 row updated.

8) TRANSFER 10 RS FROM ACCOUNT OF ANIL TO SUNIL.

QUERY:UPDATE DEPOSIT SET AMOUNT = AMOUNT - 10 WHERE CNAME = ' ANIL ';
UPDATE DEPOSIT SET AMOUNT = AMOUNT + 10 WHERE CNAME = 'SUNIL';

SQL> UPDATE DEPOSIT SET AMOUNT = AMOUNT - 10 WHERE CNAME = 'ANIL';

1 row updated.

SQL> UPDATE DEPOSIT SET AMOUNT = AMOUNT + 10 WHERE CNAME = 'SUNIL';

1 row updated.

SQL> select * from deposit;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- --------------- -----------------
100 ANIL VRCE_AMBAZARI 3620 01-MAR-95
101 SUNIL AJNI 1320 04-JAN-96
102 MEHUL KAROLBAGH 3850 17-NOV-95
104 MADHURI CHANDNI 1452 17-DEC-95
105 PRAMOD M.G.ROAD 3630 27-MAR-96
106 SANDIP ANDHERI 2200 31-MAR-96
107 SHIVANI VIRAR 1100 05-SEP-95
108 KRANTI NEHRU PLACE 5500 02-JUL-95
109 MINU POWAI 7700 10-AUG-95

9 rows selected.
9) GIVE 10 RS MORE TO ALL DEPOSITORS HAVING MORE DEPOSIT THAN THE AVERAGE DEPOSIT.

QUERY:UPDATE DEPOSITSET AMOUNT = AMOUNT + 10 WHERE CNAME IN(SELECT D1.CNAME FROM


DEPOSIT D1 GROUP BY D1.CNAME HAVING SUM(D1.AMOUNT) > ALL (SELECT AVG(D2.AMOUNT)
FROM DEPOSIT D2));

5 rows updated.

SQL> select * from deposit;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------------------------- ---------
100 ANIL VRCE_AMBAZARI 3630 01-MAR-95
101 SUNIL AJNI 1320 04-JAN-96
102 MEHUL KAROLBAGH 3860 17-NOV-95
104 MADHURI CHANDNI 1452 17-DEC-95
105 PRAMOD M.G.ROAD 3640 27-MAR-96
106 SANDIP ANDHERI 2200 31-MAR-96
107 SHIVANI VIRAR 1100 05-SEP-95
108 KRANTI NEHRU PLACE 5510 02-JUL-95
109 MINU POWAI 7710 10-AUG-95

9 rows selected.

10) GIVE 10 RS MORE FOR ALL CUSTOMER LIVING IN SAME CITY WHERE THEIR BRANCH IS
LOCATED.

QUERY:UPDATE DEPOSIT SET AMOUNT = AMOUNT + 10 WHERE CNAME IN (SELECT D1.CNAME


FROM DEPOSIT D1, BR WHERE B1.BNAME = D1.BNAME AND B1.CITY = C1.CITY AND C1.CNAME =
D1.CNAME);

1 row updated.

SQL> select * from deposit;


ACTNO CNAME BNAME AMOUNT ADATE
----- ------------------ ------------------ ---------- ------------------- -----------------
100 ANIL VRCE_AMBAZARI 3630 01-MAR-95
101 SUNIL AJNI 1320 04-JAN-96
102 MEHUL KAROLBAGH 3860 17-NOV-95
104 MADHURI CHANDNI 1452 17-DEC-95
105 PRAMOD M.G.ROAD 3640 27-MAR-96
106 SANDIP ANDHERI 2200 31-MAR-96
107 SHIVANI VIRAR 1110 05-SEP-95
108 KRANTI NEHRU PLACE 5510 02-JUL-95
109 MINU POWAI 7710 10-AUG-95
9 rows selected.

DELETE QUERIES:

1) DELETE BORROWER HAVING BRANCH NAME DHARAMPETH.

QUERY:DELETE FROM BORROW WHERE BNAME = 'DHARAMPETH';

1 row deleted.

SQL> select * from borrow;

LOANN CNAME BNAME AMOUNT


----- ------------------ ------------------ ----------
201 ANIL VRCE 1000
206 MEHUL AJNI 5000
321 MADHURI ANDHERI 2000
375 PRAMOD VIRAR 8000
481 KRANTI NEHRU PLACE 3000

2) DELETE DEPOSITORS OF VRCE_AMBAZARI BRANCH AND LIVING IN CITY CALCUTTA.


QUERY:DELETE FROM DEPOSIT WHERE BNAME = 'VRCE_AMBAZARI' AND CNAME IN(SELECT
CNAME FROM CUSTOMER
WHERE CITY = 'CALCUTTA');

1 row deleted.

SQL> select * from deposit;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------------------- ------------
101 SUNIL AJNI 1320 04-JAN-96
102 MEHUL KAROLBAGH 3860 17-NOV-95
104 MADHURI CHANDNI 1452 17-DEC-95
105 PRAMOD M.G.ROAD 3640 27-MAR-96
106 SANDIP ANDHERI 2200 31-MAR-96
107 SHIVANI VIRAR 1110 05-SEP-95
108 KRANTI NEHRU PLACE 5510 02-JUL-95
109 MINU POWAI 7710 10-AUG-95

8 rows selected.

3) DELETE BORROWER HAVING LOAN MORE THAN 1000 AND BRANCH VIRAR.

QUERY:DELETE FROM BORROW WHERE AMOUNT > 1000 AND BNAME = 'VIRAR';

1 row deleted.

SQL> SELECT * FROM BORROW;

LOANN CNAME BNAME AMOUNT


----- ------------------ ------------------ -------------------------------
201 Anil VRCE 1000
206 Mehul AJNI 5000
321 Madhuri ANDHERI 2000
481 Kranti NEHRU PLACE 3000

4) DELETE DEPOSITORS HAVING DEPOSIT LESS THAN 5000

QUERY:DELETE FROM DEPOSIT WHERE AMOUNT < 5000

6 rows deleted.

SQL> SELECT * FROM DEPOSIT;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------
108 Kranti NEHRU PLACE 5510 02-JUL-95
109 Minu POWAI 7710 10-AUG-95

5) DELETE IF DEPOSITORS BRANCH IS VIRAR AND DEPOSITOR NAME IS SHIVANI.

QUERY:DELETE FROM DEPOSIT WHERE CNAME = 'SHIVANI' AND BNAME = 'VIRAR';

1 row deleted.

6) DELETE CUSTOMER FROM BOMBAY CITY.


QUERY:DELETE FROM CUSTOMER WHERE CITY = 'BOMBAY';

3 rows deleted.

SQL> select * from customer;

CNAME CITY
------------------ ------------------
ANIL CALCUTTA
SUNIL DELHI
MEHUL BARODA
MANDAR PATNA
MADHURI NAGPUR
PRAMOD NAGPUR
SANDIP SURAT

7 rows selected.
7) DELETE DEPOSIT OF SUNIL IF VIJAY IS NOT DEPOSITOR.

QUERY:DELETE FROM DEPOSIT WHERE CNAME = 'SUNIL' AND NOT EXISTS(SELECT * FROM
DEPOSIT WHERE CNAME = 'VIJAY');

1 row deleted.

SQL> select * from deposit;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------
100 ANIL VRCE_AMBAZARI 3630 01-MAR-95
102 MEHUL KAROLBAGH 3850 17-NOV-95
104 MADHURI CHANDNI 1452 17-DEC-95
105 PRAMOD M.G.ROAD 3630 27-MAR-96
106 SANDIP ANDHERI 2200 31-MAR-96
108 KRANTI NEHRU PLACE 5500 02-JUL-95
109 MINU POWAI 7700 10-AUG-95

7 rows selected.

8) DELETE DEPOSIT OF PRAMOD.

QUERY:DELETE FROM DEPOSIT WHERE CNAME = 'PRAMOD';

1 row deleted.

SQL> select * from deposit;

ACTNO CNAME BNAME AMOUNT ADATE


----- ------------------ ------------------ ---------- ---------
100 ANIL VRCE_AMBAZARI 3630 01-MAR-95
102 MEHUL KAROLBAGH 3850 17-NOV-95
104 MADHURI CHANDNI 1452 17-DEC-95
106 SANDIP ANDHERI 2200 31-MAR-96
108 KRANTI NEHRU PLACE 5500 02-JUL-95
109 MINU POWAI 7700 10-AUG-95
6 rows selected.
9) DELETE DEPOSITORS OF VRCE_AMBAZARI BRANCH AND LIVING IN CITY CALCUTTA.

QUERY:DELETE FROM DEPOSIT WHERE BNAME = 'VRCE_AMBAZARI' AND CNAME IN (SELECT


CNAME FROM CUSTOMER WHERE CITY = CALCUTTA');

1 row deleted.

10) DELETE BORROWER HAVING LOAN MORE THAN 1000 AND BRANCH DHARAMPETH.

QUERY:DELETE FROM BORROW WHERE AMOUNT > 1000 AND BNAME = 'DHARAMPETH';

1 row deleted.

LOANN CNAME BNAME AMOUNT


----- ------------------ ------------------ -------------------------------
201 ANIL VRCE 1000
206 MEHUL AJNI 5000
321 MADHURI ANDHERI 2000
375 PRAMOD VIRAR 8000
481 KRANTI NEHRU PLACE 3000

You might also like