Leeyebin의 블로그
[ORACLE] MERGE INTO 본문
시험쪽 공지사항, 게시판쪽에서 수정을 하면 리스트에서 보게 되면 수정할 날짜로 박혀는 리스트가 난장판이 되는 문제가 있어서(한번 공지하거나 게시하면 수정하는경우에도 디비에는 들어가지만 보통 목록에 있는 리스트는 등록날짜로 나오고 정렬된다.) 함부장님이 작성한 쿼리를 보던중 모르는 부분이 있어 적어 놓는다. 보통 CRUD로써 신규, 수정, 삭제, 세개의 기능이 있을 것인데 처음 그냥 봤을때는 신규 추가던 수정이건 같은 서비스를 타는데서 처음에는 이게 뭔가 싶었다. 그게 바로 MERGE INTO이다.
MERGE INTO table_name alias
USING (table | view | subquery) alias -- 하나의 테이블만 이용한다면 DUAL 활용
ON (join condition) -- WHERE절에 조건 쓰듯이
WHEN MATCHED THEN -- ON 이하의 조건에 해당하는 데이터가 있는 경우
UPDATE SET col1 = val1[, ...] -- UPDATE 실행
WHEN NOT MATCHED THEN -- ON 이하의 조건에 해당하는 데이터가 없는 경우
INSERT (column lists) VALUES (values); -- INSERT 실행
너무너무 졸려서 이어서쓰도록함
'프로그래밍 > SQL' 카테고리의 다른 글
[ORACLE] COMMIT 후 TIMESTAMP 이용하여 복구하는 방법 (0) | 2017.03.06 |
---|---|
[ORACLE]우선순위 지정해서 ORDER BY 하기 (1) | 2017.01.06 |
[DB2]파라미터값을 임시로 테이블인 것처럼 사용하기 (0) | 2016.09.06 |
Comments