We have table called
DEPT with the following columns and data
DEPTNO DNAME LOC
-------- -------- ----
10 accounting new
york
20 research dallas
30 sales Chicago
40 operations boston
a) CREATE STUDENT TABLE
SQL> Create table student(no
number(2),name varchar(2),marks number(3));
b) MULTI INSERT WITH ALL FIELDS
SQL> Insert all
Into student values(1,’a’,100)
Into student values(2,’b’,200)
Into student values(3,’c’,300)
Select *from dept where deptno=10;
-- This inserts 3 rows
c) MULTI INSERT WITH SPECIFIED
FIELDS
SQL> insert all
Into student (no,name) values(4,’d’)
Into student(name,marks)
values(’e’,400)
Into student values(3,’c’,300)
Select *from dept where deptno=10;
--
This inserts 3 rows
d) MULTI INSERT WITH DUPLICATE
ROWS
SQL> insert all
Into student values(1,’a’,100)
Into
student values(2,’b’,200)
Into
student values(3,’c’,300)
Select
*from dept where deptno > 10;
--
This inserts 9 rows because in the select statement retrieves 3 records (3
inserts for each
row retrieved)
e) MULTI INSERT WITH CONDITIONS
BASED
SQL> Insert all
When
deptno > 10 then
Into student1 values(1,’a’,100)
When dname = ‘SALES’ then
Into student2 values(2,’b’,200)
When loc = ‘NEW YORK ’ then
Into student3 values(3,’c’,300)
Select *from dept where deptno>10;
-- This
inserts 4 rows because the first condition satisfied 3 times, second
condition
satisfied once and the last none.
f) MULTI INSERT WITH CONDITIONS
BASED AND ELSE
SQL> Insert all
When deptno > 100 then
Into student1 values(1,’a’,100)
When dname = ‘S’ then
Into student2 values(2,’b’,200)
When loc = ‘NEW YORK ’ then
Into student3 values(3,’c’,300)
Else
Into student values(4,’d’,400)
Select *from dept where deptno>10;
-- This inserts 3 records because the else
satisfied 3 times
g) MULTI INSERT WITH CONDITIONS
BASED AND FIRST
SQL> Insert first
When deptno = 20 then
Into student1 values(1,’a’,100)
When dname = ‘RESEARCH’ then
Into student2 values(2,’b’,200)
When loc = ‘NEW YORK ’ then
Into student3 values(3,’c’,300)
Select *from dept where deptno=20;
-- This inserts 1 record because the first
clause avoid to check the remaining conditions
once the condition is satisfied.
h) MULTI INSERT WITH CONDITIONS
BASED, FIRST AND ELSE
SQL> Insert first
When deptno = 30 then
Into student1 values(1,’a’,100)
When dname = ‘R’ then
Into student2 values(2,’b’,200)
When loc = ‘NEW YORK ’ then
Into student3 values(3,’c’,300)
Else
Into student values(4,’d’,400)
Select *from dept where deptno=20;
--
This inserts 1 record because the else clause satisfied once
i) MULTI INSERT WITH MULTIBLE
TABLES
SQL> Insert all
Into student1 values(1,’a’,100)
Into student2 values(2,’b’,200)
Into student3 values(3,’c’,300)
Select *from dept where deptno=10;
-- This inserts 3 rows
**
You can use multi tables with specified fields, with duplicate rows, with
conditions, with
first and else clauses.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.