DBMS MySQL - SQL6 : UPDATE MANY -> 여러개의 레코드를 한 쿼리에 UPDATE하기

이전글 : DBMS MySQL - SQL5 : GROUP BY 레코드를 그룹으로 묶기


 안녕하세요. 알렉스입니다. 이번에는 SQL문을 이용하여 하나의 쿼리로 여러개의 Record를 업데이트 하도록 하겠습니다.

1. 기존 UPDATE

기존의 UPDATE는 WHERE을 이용하여 검색한 다음에 SET을 이용하여 Value를 UPDATE하는 방식 이였습니다. 아래 링크 참조

링크 : DBMS MySQL - SQL2 : UPDATE, SUBSTRING, REPLACE


하지만 여러개의 레코드를 한 쿼리안에 UPDATE를 할려면 다른 쿼리를 이용해야 합니다.


2. 여러개의 Query로 Record 업데이트


$ INSERT INTO [table name]([column name1], [column name2], [column name3])

VALUES

([value1-1], [value1-2], [value1-3]),

([value2-1], [value2-2], [value2-3])

ON DUPLICATE KEY UPDATE

 [column name1]=VALUES([column name1]), [column name2]=VALUES([column name2]);

 


사진1) 여러 Record Update



사진1에서 INSERT를 쓴것을 알수 있습니다. 하지만 'ON DUPLICATE KEY UPDATE'를 삽입하여 중복되는 key에 대해서 UPDATE를 하도록 하였습니다.

이 방법을 이용하면 UPDATE을 하기 위해서 DB에 불필요한 요청을 보낼 필요가 없습니다.


다음글 : DBMS MySQL - SQL7: MIN, MAX 최대, 최소 및 중복 쿼리문 사용하기(2개이상) 



댓글

이 블로그의 인기 게시물

Lesson 12_1 프로퍼티 노드(Property Node)

DAQ로 전압 측정하기-2

Lesson 12_2 참조를 이용한 프로퍼티노드(Property Node)