Oracle 데이터베이스에서 Merge 작업을 수행하는 방법.
# 아래는 Merge 문의 예시 입니다.
MERGE INTO target_table t
USING source_table s
ON (t.id = s.id)
WHEN MATCHED THEN
UPDATE SET t.column1 = s.column1, t.column2 = s.column2
WHEN NOT MATCHED THEN
INSERT (id, column1, column2) VALUES (s.id, s.column1, s.column2);
# Mybatis 에서 Merge 사용 시 아래와 같이 사용 할 수도 있습니다.
MERGE INTO target_table t1
USING DUAL ON (t1.column1 = #{parameter1})
WHEN MATCHED THEN
UPDATE SET
t1.column2 = #{parameter2}
WHEN NOT MATCHED THEN
INSERT (
t1.column1
, t1.column2
) VALUES (
#{parameter1}
, #{parameter2}
)
반응형
'Developer > Database' 카테고리의 다른 글
[DB] 조회할때 날짜 조건 (0) | 2016.08.26 |
---|---|
[DB Code] 테이블 삭제시 CASCADE CONSTRAINTS 옵션 (0) | 2015.07.22 |
[DB용어] RDBMS 란? (0) | 2015.07.07 |
[DB용어] 트랜젝션이란? (2) | 2015.07.03 |