[프로그래머스 SQL/59409] 중성화 여부 파악하기

☑️ 문제

프로그래머스 59409

☑️ 풀이

SELECT ANIMAL_ID, NAME,
CASE WHEN SEX_UPON_INTAKE LIKE 'NEUTERED%' OR SEX_UPON_INTAKE LIKE 'SPAYED%' THEN 'O'
ELSE 'X' 
END AS '중성화'
FROM ANIMAL_INS
ORDER BY ANIMAL_ID
  • CASE 구문을 사용하여 SEX_UPON_INTAKE 값이 NEUTERED% 또는 SPAYED%로 시작하는 경우 ‘O’를 반환하고, 그렇지 않으면 ‘X’를 반환한다.

☑️ 문법 정리

case

  • 형식

      CASE
          WHEN 조건1 THEN 반환값1
          WHEN 조건2 THEN 반환값2
          ELSE 기본값
      END
    
    • CASE 구문은 조건에 따라 다른 값을 반환한다.
    • 표현식의 일부분으로 사용될 수 있고, SELECT, UPDATE, INSERT 등의 쿼리에서 활용된다.
    • WHEN 절은 ANDOR 연산자를 사용하여 여러 조건을 결합할 수 있다.
    • ELSE는 생략하면 조건에 맞지 않는 경우 NULL이 반환된다.

© 2021. All rights reserved.

yaejinkong의 블로그