본문 바로가기

Algorithm/SQL

(MYSQL) - 프로그래머스 (SQL 고득점 kit - String, Date) : 중성화 여부 파악하기

반응형

programmers.co.kr/learn/courses/30/lessons/59409

 

코딩테스트 연습 - 중성화 여부 파악하기

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

CASE ~ WHEN THEN ~ ELSE ~ END AS를 사용하는 문제였습니다.

 

풀이방법

 1. 중성화 여부 column 인 SEX_UPON_INTAKE가 Intact가 들어있지 않다면 수술을 했다는 의미이므로 'O'

 2. Else의 경우에는 'X'

 3. CASE에 대한 처리가 끝났다면 column명을 중성화로 바꿔줍니다.

 4. 마지막으로 ANIMAL_ID에 대해 오름차순으로 정렬합니다.

 

Code

SELECT ANIMAL_ID, NAME,
    CASE
        WHEN SEX_UPON_INTAKE NOT LIKE '%Intact' THEN 'O'
        ELSE 'X'
    END AS 중성화
FROM ANIMAL_INS 
ORDER BY ANIMAL_ID