MERGE INTO MERGE INTO target_table USING source_table ON (조건) WHEN MATCHED THEN UPDATE SET 변경사항 WHEN NOT MATCHED THEN INSERT (column1, column2, ...) VALUES (value1, value2, ...); MERGE INTO 사용할 테이블 USING 비교할 테이블 (없으면 DUAL) ON 비교 조건 WHEN MATCHED THEN 조건이 충족 시 해당 UPDATE문 실행 WHEN NOT MATCHED THEN 조건이 불충족 시 해당 INSERT문 실행 여기서 UPDATE문, INSERT문에는 테이블명은 생략합니다! UPDATE문의 WHERE절은 생략해도 되고 안 해도 됩니다. 해당 쿼리문을 ..
숫자가 자동 증가하는 상품 코드 만들기 상품 코드를 보통 ITEM_001, ITEM_002 ... 이런식으로 문자열 + 증가하는 숫자 형식을 많이 사용한다. 데이터를 INSERT할 때, 자동으로 1씩 증가하는 상품코드를 만들어보자. SUBSTR(ITEM_CODE, 6) : ITEM_CODE 컬럼의 6번째 자리부터 잘라내서 가져온다. 그럼 001, 002 숫자만 추출되는데 이것이 문자로 반환되기 때문에 TO_NUMBER(SUBSTR(ITEM_CODE, 6)) : 숫자로 변환 MAX(TO_NUMBER(SUBSTR(ITEM_CODE, 6))) : 증가하는 숫자를 만들어야 하기 때문에 현재 존재하는 컬럼의 가장 최대값을 추출 NVL(MAX(TO_NUMBER(SUBSTR(ITEM_CODE, 6))), 0) : N..
UNION 여러 SELECT 결과를 한번에 조회 조회하는 컬럼 개수가 동일해야 함 컬럼명은 달라도 되지만 자료형은 동일해야함 UNION ALL : 중복 데이터도 조회가 됨 UNION 활용 INSERT 와 SELECT를 함께 사용해서 여러 SELECT문을 한번에 삽입할 수 있습니다.