메뉴 건너뛰기

Dev tips

DataBase [Oracle] INSERT … ON DUPLICATE KEY UPDATE

taknim 2009.06.25 20:27 조회 수 : 13653 추천:3461

http://devblog.billism.com/?p=12MySQL 에서 사용하는 INSERT … ON DUPLICATE KEY UPDATE 문장이나 REPLACE 문장을 오라클에서 사용하려면?

정답은 MERGE ...

[MySQL]
INSERT INTO TABLE (a,b,c)
VALUES (1,2,3)
ON DUPLICATE KEY UPDATE b=2, c=3;

REPLACE INTO table_a (a,b,c)
VALUES(1,2,3);

[Oracle]
MERGE INTO SCHEMA.table_a TA
USING (
  SELECT '1' a, '2' b, '3' c
  FROM DUAL
) E
ON (TA.a = E.a)
WHEN MATCHED THEN
  UPDATE SET TA.b = E.b, TA.c = E.c
WHEN NOT MATCHED THEN
  INSERT (TA.a, TA.b, TA.c)
  VALUES (E.a, E.b, E.c);
번호 제목 글쓴이 날짜 조회 수
82 [MySQL] FIND_IN_SET 배열 형식의 값을 비교할 때 사용 taknim 2017.10.18 28
81 mysql split 함수 (split_str) taknim 2017.03.14 125
80 [MSSQL] DataBase 안에 있는 procedure에 텍스트 내용을 검색 프로시저 생성 taknim 2015.11.19 1372
79 sqlite3 테이블 정보 관련 쿼리 taknim 2014.03.22 3637
78 [MSSQL] mdf 파일로 DB 복원하기 taknim 2013.08.28 4651
77 [MySQL] 전체 테이블 mysqlcheck repair & optimize taknim 2013.06.11 5246
76 [oracle] isqlplus 에서 특수문자(&) 입력하는 방법 taknim 2012.08.10 16050
75 [오라클] 프로시저 확인하기 taknim 2011.10.04 8065
74 오라클9i 에서 MD5 암호화 taknim 2010.06.08 13038
73 [MSSQL] MS-SQL 동적쿼리 이용하기 taknim 2009.12.28 16962
72 [oracle] PLSQL에서 LONG RAW DATA DML 하기 taknim 2009.09.25 12330
71 [oracle] 실행계획 보기, 토드 설정법 explain plan taknim 2009.09.24 12154
70 [MySQL] 사용자 계정 관리하기 (추가/변경/삭제) taknim 2009.09.18 10036
69 [mysql] mysqlbinlog 실행시 캐릭터셋(utf8) 오류 taknim 2009.08.25 15753
68 [mysql] 동적 쿼리 생성시 변수를 대입하거나 값을 받아오기 taknim 2009.08.17 17168
67 [MSSQL] sp_who2 를 대신할 sql 코드 file taknim 2009.08.13 10929
66 [MSSQL] 변수를 TABLE로 선언 후 데이터 입력 taknim 2009.07.30 11692
65 [ORACLE] Flashback (과거시점에서 질의실행) taknim 2009.07.06 10141
64 [Oracle] DBNEWID Utility - DBNAME,DBID변경하기 taknim 2009.07.06 15572
» [Oracle] INSERT … ON DUPLICATE KEY UPDATE taknim 2009.06.25 13653