본문 바로가기
Database

[MySql] Select 하여 Insert 하기

by jn4624 2021. 9. 11.
반응형
INSERT INTO prod_code (
    sort_no
    , code_no
    , code_order
    , code_name
    , code_type
    , code_yn
) SELECT
    'B'
    , code_no
    , code_order
    , code_name
    , code_type
    , code_yn
FROM
    prod_code
WHERE
    sort_no = 'A';

위와 같이 INSERT문에는 기존 테이블에 존재하는 컬럼 그대로를 정의한다.

 

그리고 SELECT문에도 기존 테이블에 존재하는 컬럼을 그대로 정의하되 변경되어 저장되기를 원하는 컬럼 자리에 값을 정의한다.

이때 INSERT문에 정의된 컬럼 위치와 SELECT문에 정의된 컬럼 위치가 동일해야 원하는 컬럼에 원하는 값이 정상적으로 추가될 수 있으니 유의하자.

 

WHERE절에는 기존 데이터와 새로 추가될 데이터를 구분할 수 있는 유니크한 값을 조건으로 사용한다.

반응형