DB/MYSQL

MySQL CASE WHEN

yeon.Biju 2020. 3. 19. 11:23

 

CASE WHEN... 을 거의 한 패턴으로만 사용했는데... 조금은 다른 식으로 사용해도 되는 것 같다.

 

기본 구문 형태는 아래 2가지 방식인 것 같고.

 

CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result ...] [ELSE result] END

CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END

 

 

예제로 보니 보다 쉬운 것 같다.

 

mysql> SELECT CASE 1 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE 'more' END;
        -> 'one'
mysql> SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;
        -> 'true'
mysql> SELECT CASE BINARY 'B' WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;
        -> NULL