Back-end/Database

Back-end/Database

[SQL] MERGE INTO (데이터 있으면 UPDATE 없으면 INSERT)

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절은 생략해도 되고 안 해도 됩니다. 해당 쿼리문을 ..

Back-end/Database

[SQL] 숫자가 자동 증가하는 상품 코드 만들기 (ITEM_001, ITEM_002)

숫자가 자동 증가하는 상품 코드 만들기 상품 코드를 보통 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..

Back-end/Database

[SQL] 여러개를 SELECT, 다중 쿼리 조회 및 다중 쿼리 삽입 UNION

UNION 여러 SELECT 결과를 한번에 조회 조회하는 컬럼 개수가 동일해야 함 컬럼명은 달라도 되지만 자료형은 동일해야함 UNION ALL : 중복 데이터도 조회가 됨 UNION 활용 INSERT 와 SELECT를 함께 사용해서 여러 SELECT문을 한번에 삽입할 수 있습니다.

Back-end/Database

[SQL] 외래키 제약 조건 (CONSTRAINT, ON DELETE CASCADE)

기본키 외래키 설정 CONSTRAINT PK명 PRIMARY KEY CONSTRAINT FK명 REFERENCES 부모테이블명 (PK컬럼명) ON DELETE CASCADE : 부모 테이블의 PK가 삭제되면 연결된 자식 테이블의 데이터도 함께 삭제되도록 설정

eunjin-park
'Back-end/Database' 카테고리의 글 목록 (4 Page)