참치코더의 꿈 메모장

Oracle / 프로그래머스 - 중성화 여부 파악하기 본문

Oracle

Oracle / 프로그래머스 - 중성화 여부 파악하기

참치깡 2026. 1. 19. 17:52
728x90

1
2
3
4
5
6
7
8
SELECT ANIMAL_ID, NAME,
    CASE
        WHEN SUBSTR(SEX_UPON_INTAKE, 11) IN ('N''S')
        THEN 'O'
        ELSE 'X'
        END AS 중성화
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;
cs

 

- ANIMAL_INS 테이블에서 보호소의 동물이 중성화되었는지 안되었는지 파악하는 문제이다.

  동물의 아이디와 이름, 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성하는 문제이다.

 

- 이때 중성화가 되어있다면 'O', 아니라면 'X'라고 표시하는 문제이다.

 

해당하는 테이블인 ANIMAL_INS 테이블을 FROM절에 작성하고 각 조회해야 되는 컬럼값인 

ANIMAL_ID, NAME, 을 SELECT 절에 작성하고 조건문을 사용하여 CASE WHEN THEN문을 사용하여

SUBSTR()함수를 사용하여 SEX_UPON_INTAKE의 첫번째 글자를 추출해서 해당 글자가 N 또는 S 라면 

중성화가 된 동물이므로 'O'를 작성하고, 아니라면 ELSE문에 'X'를 작성한다.

이렇게 쿼리를 작성한다면 올바른 정답을 얻을 수 있다. ^^

 

코드 실행했을때 일부 결과 추출

728x90
Comments