반응형
MERGE문은 오라클에서만 사용가능하며 insert, update, delete를 조건에 따라 한번에 가능 하도록 해준다.
아래의 사이트 링크를 클릭하면 자세한 내용에 대한 강좌가 있다.
merge into emp_merge_test m
using (select empno, deptno, sal
from emp
where deptno in (20,30)
)e
on (m.empno = e.empno)
when matched then
update set m.sal = round(m.sal*1.1)
delete where m.deptno = 20
when not matched then
insert (m.empno, m.deptno, m.sal)
values (e.empno, e.deptno, e.sal)
where e.sal > 1000
;
using (select empno, deptno, sal
from emp
where deptno in (20,30)
)e
on (m.empno = e.empno)
when matched then
update set m.sal = round(m.sal*1.1)
delete where m.deptno = 20
when not matched then
insert (m.empno, m.deptno, m.sal)
values (e.empno, e.deptno, e.sal)
where e.sal > 1000
;
반응형
'DB > SQL' 카테고리의 다른 글
[자격증] SQLD 시험 후기 (0) | 2017.04.30 |
---|---|
Oracle Pivot 함수 (0) | 2016.04.23 |
IN 연산자 (0) | 2016.04.05 |
댓글