SQL Tutorial DBMS Lab
SQL Tutorial DBMS Lab
Page-1
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala
Page-2
Solutions:
Command to Create Tables:Create table product (product_id varchar(10) primary key, product_name varchar(20), manufacturer_name
char(20),product_rate number(9,4), sell_price number(9,4),product_description varchar(25));
Create table client (client_id varchar(10) primary key, client_name char(20),address varchar(15), city
char(15),pin number(8), state char(15),bal_due number(9,4));
Create table salesman (salesman_id varchar(10) primary key, salesman_name char(20),address varchar(15), city
char(15),pin number(8), state char(15),salary number(9,4));
Create table sales_order_details (sales_order_no varchar(10) primary key, sales_order_date date, client_id
varchar(10)
references client(client_id), salesman_id varchar(10) references salesman(salesman_id) ,
bill_payby_party
char(5),
delivery_date
date,product_rate
number(9,4),
tot_quantity_order
number(8),cancel_date date default NULL);
Page-3
Page-4
Page-5
munni das
sonitpur
kusum roy
tezpur
mina das
tezpur
moytree nayak
tezpur
pauri mia
tezpur
manali das
tezpur
11 rows selected.
(b) List the various products available.
SQL> Select * from product;
PRODUCT_ID PRODUCT_NAME
PRODUCT_DESCRIPTION
p001
lux_soap
Lux_international
p005
learn_books
p006
tata_steel
p007
seagate hdd
seaget_world
p008
dvd writer
frontec_org
p003
marry_biscuit
marigold_org
2218.8
p004
mitsubisi_pen
pen_international
2015.67
book_world
tata_org
15.67
20.43
soap
5104.8
5116.4
book
5118.8
5120.4
5104.8
5118.8
tata
5116.4
5120.4
2220.4
2120.43
HDD1034
DVDRW
buiskit
pen
(c) Find the names of all clients having a as the second letter in their names.
SQL> SELECT client_name FROM client WHERE client_name LIKE '_a%';
CLIENT_NAME
-------------------pauri mia
manali das
ADDRESS
CITY
PIN
STATE
BAL_DUE
kusum roy
city_dos
tezpur
799141
assam
110.9
cn01009
mina das
pachmile
tezpur
799152
assam
190.9
cn01003
moytree nayak
assam
9990.9
pachmile
tezpur
799152
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala
pauri mia
cn01011
manali das
Page-6
pachmile
tezpur
799152
assam
2990.9
satmile
tezpur
799154
assam
3990.9
(e) Find the products whose selling price is greater than 2000 and less than or equal to 5000
SQL> SELECT * FROM product WHERE sell_price > 2000 AND (sell_price < 5000 OR
2 sell_price = 5000);
PRODUCT_ID PRODUCT_NAME MANUFACTURER_NAME PRODUCT_RATE SELL_PRICE PRODUCT_DESCRIPTION
---------- -------------------- -------------------- ------------ ----------------------------------p003
marry_biscuit
marigold_org
2218.8
2220.4
p004
mitsubisi_pen
pen_international
2015.67
buiskit
2120.43
pen
Null? Type
PRODUCT_NAME
VARCHAR2(20)
MANUFACTURER_NAME
CHAR(20)
PRODUCT_RATE
SELL_PRICE
NUMBER(9,4)
NUMBER(9,4)
PRODUCT_DESCRIPTION
NEW_PRICE
VARCHAR2(25)
NUMBER(9,4)
Null? Type
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala
Page-7
PRODUCT_RATE
NUMBER(9,4)
TOT_QUANTITY_ORDER
NUMBER(8)
CANCEL_DATE
DATE
Null? Type
SALES_ORDER_DATE
DATE
CLIENT_ID
VARCHAR2(10)
SALESMAN_ID
VARCHAR2(10)
BILL_PAYBY_PARTY
CHAR(5)
DELIVERY_DATE
DATE
NEW_PRODUCT_RATE
NUMBER(9,4)
TOT_QUANTITY_ORDER
NUMBER(8)
CANCEL_DATE
DATE
MANUFACTURER_NAME
NEW_PRICE
dvd writer
frontec_org
p007
seagate hdd
seaget_world
p005
learn_books
book_world
5104.8
5116.4
book
p003
marry_biscuit
marigold_org
2218.8
2220.4
buiskit
p004
mitsubisi_pen
p001
lux_soap
Lux_international
p006
tata_steel
tata_org
pen_international
5118.8
5120.4
5104.8
2015.67
15.67
5118.8
5116.4
DVDRW
HDD1034
2120.43 pen
20.43
5120.4
soap
tata
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala
Page-8
(i) Display the order number and date on which the clients placed their order.
SQL> SELECT sales_order_no, sales_order_date FROM Sales_Order_Details;
SALES_ORDE SALES_ORD
---------- --------on01001
01-AUG-08
on01003
12-AUG-08
on01004
13-AUG-08
on01005
14-AUG-08
on01006
15-AUG-08
on01007
16-JAN-08
on01008
01-FEB-08
7 rows selected.
(j) Delete all the records having delivery date before 25th August, 2008.
SQL> DELETE FROM sales_order_details WHERE delivery_date < '25-aug-2008';
2 rows deleted.
SQL> Select * from sales_order_details;
SALES_ORDE
SALES_ORD
CLIENT_ID
SALESMAN_I
BILL_
DELIVERY_
NEW_PRODUCT_RATE
TOT_QUANTITY_ORDER CANCEL_DA
---------- --------- ---------- ---------- ----- --------- ---------------------------------- --------on01003 12-AUG-08 cn01005 s003
yes 26-AUG-08
2220.4
10
no 30-AUG-08
2220.4
52 28-MAR-08
yes 31-AUG-08
2220.4
53
yes 28-AUG-08
2220.4
54
no 28-AUG-08
8220.4
54 18-MAR-08
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala
Page-9
on01008
01-FEB-08 cn01004
s003
no
16-AUG-08
8220.4
54 18-MAR-08
BAL_DUE
1200
MANUFACTURER_NAME
seagate hdd
p008
dvd writer
seaget_world
frontec_org
5104.8
5118.8
5116.4
5120.4
5000 HDD1034
2000 DVDRW
(n) List the names, city and state of the clients not in the state of ASSAM
SQL> SELECT client_name,city,state FROM client WHERE NOT state =assam;
CLIENT_NAME
CITY
STATE
-------------------- --------------- ---------------
alak roy
suman roy
priya das
mita mia
amarpur
agartala
kamalpur
singur
tripura
tripura
tripura
tripura
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala
Page10
_______________________________________________________________________________________________
SQL Command Tutorials for DBMS Lab
Tutorial Prepared by- Alak Roy, Asst.Prof, Dept of CSE, NIT Agartala