SQL에서 DUPLICATE와 INSERT-SELECT 쿼리 : 효율적인 데이터 관리 방법

LeeYulhee·2023년 12월 5일
0

👉 DUPLICATE 쿼리


  • 설명
    • 정확히는 INSERT ... ON DUPLICATE KEY UPDATE 구문
    • 주로 INSERT 연산과 관련하여 사용
      • 특히 INSERT ... ON DUPLICATE KEY UPDATE 구문에서 볼 수 있음
    • 삽입하려는 데이터가 기본 키나 고유 키 제약 조건을 위반하는 경우에 대한 처리 방법을 제공
      • 새로운 데이터를 삽입하려 할 때 해당 키가 이미 존재하는 경우 어떻게 처리할지 결정할 수 있음
      • ⇒ INSERT 중 기본키에 해당하는 값이 있으면 UPDATE가 되도록 쿼리 작성 가능

  • 예시
    INSERT INTO CATEGORY (CATEGORY_ID, CATEGORY_KEYWORD)
    VALUES ('001', '상의')
        ON DUPLICATE KEY UPDATE CATEGORY_KEYWORD= '상의';
    • CATEGORY_ID가 PK인 경우
      • CATEGORY 테이블에 ‘001’, ‘상의’를 INSERT 하는데, ‘001’(PK)이 있으면 해당하는 CATEGORY_KEYWORD 컬럼의 값을 ‘상의’로 UPDATE



👉 INSERT-SELECT 쿼리


  • 설명
    • 한 테이블에서 데이터를 선택하여 다른 테이블에 삽입하는 데 사용
    • 대량의 데이터를 효율적으로 다른 테이블로 이동하거나 복사할 때 유용

  • 예시
    INSERT INTO SALE_CLOTH (CLOTH_ID, CATEGORY_NM)
    SELECT CLOTH_ID, CLOTH_NM
      FROM CLOTH
     WHERE SALE_STATUS = '판매중';
    • CLOTH 테이블에서 SALE_STATUS 컬럼이 ‘판매중’인 CLOTH_ID, CLOTH_NM 컬럼을 SALE_CLOTH 테이블에 INSERT
profile
끝없이 성장하고자 하는 백엔드 개발자입니다.

0개의 댓글