본문 바로가기
MySql

MySQL 여러 열을 업데이트하는 MySQL CASE

by 베이스 공부 2021. 1. 18.
반응형

case 문을 사용하여 테이블의 여러 열을 업데이트하고 싶지만이 작업을 수행하는 방법을 찾을 수 없습니다 (가능할 수도 있음). 다음과 같은 잘못된 참조 쿼리를 찾았습니다.

UPDATE tablename SET
    CASE name
        WHEN 'name1' THEN col1=5,col2=''
        WHEN 'name2' THEN col1=3,col2='whatever'
        ELSE col1=0,col2=''
    END;

유효한 SQL로 예상 한 결과를 얻을 수있는 방법이 있습니까?

 

해결 방법

 

UPDATE tablename
SET col1 = CASE WHEN name = 'name1' THEN 5 
                WHEN name = 'name2' THEN 3 
                ELSE 0 
           END
 , col2 = CASE WHEN name = 'name1' THEN '' 
               WHEN name = 'name2' THEN 'whatever' 
               ELSE '' 
          END
;

 

참조 페이지 https://stackoverflow.com/questions/13673890

 

 

반응형

댓글