#SELECT후 UPDATE를 하나의 쿼리로 처리하는 방식

 

#일반적인 UPDATE문

UPDATE
    테이블명
SET
    컬럼명1 = ?,
    컬럼명2 = ?
WHERE
    조건
    

 

 

#SELECT후 UPDATE (서브쿼리 활용)

SELECT 컬럼명과 UPDATE SET의 컬럼명은 상관없이 순차적으로 들어간다

이때 SELECT 항목수와 UPDATE 항목수가 일치해야한다

 

UPDATE
    BOARD1
SET
    BOARDNUM = (SELECT
                   BOARDNUM
                FROM
                   BOARD2
                WHERE
                   WRITERID = ?
                )
WHERE
    WRITERID = ?

 

# 2개 이상의 컬럼을 SELECT 후 UPDATE를 할때는 컬럼을 괄호안에 넣어주고 컬럼수를 맞춰주면된다

UPDATE
    BOARD1
SET
    (BOARDNUM, BOARDID) = (SELECT
                              BOARDNUM,
                              BOARDID
                           FROM
                              BOARD2
                           WHERE
                              WRITERID = ?
                          )
WHERE
    WRITERID = ?

 

+ Recent posts