728x90
이번 시간에는 오라클 함수 INSERT ALL, INSERT FIRST 사용법에 대해서 알아보도록 하겠습니다.
테이블 생성
create table t4
(c1 number);
create table t3
(c1 number);
create table t2
(c1 number);
create table t1
(c1 number);
insert into t4 values(1);
insert into t4 values(2);
insert into t4 values(3);
commit;
SELECT * FROM T4;
INSERT ALL
기본적인 INSERT 문과 마찬가지로 조건에 맞으면 모든 테이블에 삽입을 합니다.
insert all
when c1 >=2 then into t1
when c1 >=3 then into t2
else into t3
select c1 from t4;
select * From t1;
C1
2
3
select * From t2;
C1
3
select * From t3;
C1
1
select * From t4;
C1
1
2
3
rollback;
INSERT FIRST
기본적인 INSERT 문과 마찬가지로 조건에 맞으면 모든 테이블에 삽입을 합니다.
차이점은 선행 조건에서 이미 삽입되었던 데이터는 들어가지 않는습니다.
첫 번째 조건인 c1 >=2 then into t1으로 T1 테이블에 2,3번이 입력되었습니다.
두 번째 조건인 c1 >=3 then into t2는 T2 테이블에 3번이 들어가야 하지만 "INSERT FIRST" 문으로써
앞서 첫 번째 조건에서 3번이 들어갔기 때문에 아무 값도 입력되지 않습니다.
insert first
when c1 >=2 then into t1
when c1 >=3 then into t2
else into t3
select c1 from t4;
select * From t1;
C1
2
3
select * From t2;
C1
select * From t3;
C1
1
select * From t4;
C1
1
2
3
rollback;
이상으로 오라클 함수 INSERT ALL, INSERT FIRST 사용법과 차이점에 대해서 알아보았습니다.
반응형
그리드형
'IT > ORACLE' 카테고리의 다른 글
[ORACLE] Number 타입 형태 표 ( Number(2,5),Number(5,2) ) (1) | 2021.05.25 |
---|---|
[ORACLE] CROSS JOIN 사용법 & 예제 (0) | 2021.05.24 |
[FULL OUTER JOIN] 예문으로 이해하기 (0) | 2021.05.18 |
[ORACLE] 오라클 NULLIF 함수 사용법 및 예제 (0) | 2021.05.14 |
[ORACLE] 오라클 Left outer join VS (+) 조인의 순서차이 (0) | 2021.05.14 |
댓글