본문 바로가기
프로그래밍

[SQL] CASE문 이용해서 조건에 따른 결과값 반환하기

by youngbamer 2021. 9. 28.
반응형

 

SQL에서 조회된 결과 값에 따라 원하는 값으로 변경하여 반환하고 싶을 때 CASE문을 사용할 수 있습니다.

CASE의 문법은 다음과 같습니다.

 

CASE 조건문 WHEN 조건문 THEN 리턴값 WHEN 조건문 THEN 리턴값 ELSE 리턴값 END;

 

조건문에 해당하는 값이 존재한다면 THEN 후에 리턴값으로 반환됩니다.

 

프로그래머스에서 SQL 문제 중 사용하게된 CASE 문입니다.

앞으로 요긴하게 잘 사용할 것 같습니다.

 

SELECT ANIMAL_ID, NAME, CASE WHEN REGEXP_LIKE(SEX_UPON_INTAKE, 'Neutered|Spayed')
THEN 'O' ELSE 'X' END AS 중성화 FROM ANIMAL_INS ORDER BY ANIMAL_ID

 

보호소 동물 데이터베이스에서 중성화된 동물이면 "O"를, 그렇지않다면 "X"를 SELECT 하는 SQL을 작성하는 문제였는데요.

저같은 경우는 REGEXP_LIKE 함수를 이용해서 Neutrered, Sprayed 문자열이 SEX_UPON_INTAKE에 포함된다면 "O"를 출력하게 SQL문을 작성하였습니다.

 

 

코드 실행 결과는 대략 위와 같습니다.

 

반응형