본문 바로가기

프로그래머스

(MySQL / 프로그래머스) 보호소에서 중성화한 동물

728x90
반응형
SMALL


보호소에서 중성화한 동물


 



문제 출처

코딩테스트 연습 - 보호소에서 중성화한 동물 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr



Code

SELECT A.ANIMAL_ID, A.ANIMAL_TYPE, A.NAME
FROM ANIMAL_INS A JOIN ANIMAL_OUTS B ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE A.SEX_UPON_INTAKE LIKE CONCAT("Intact","%") AND B.SEX_UPON_OUTCOME NOT LIKE CONCAT("Intact","%")
ORDER BY A.ANIMAL_ID

#보호소에서 중성화 수술을 거친 동물 정보를 알아보려 합니다. 

#보호소에 들어올 당시에는 중성화되지 않았지만, 
#보호소를 나갈 당시에는 중성화된 동물의 

#아이디와 생물 종, 이름을 조회하는 
#아이디 순으로 조회하는 SQL 문을 작성해주세요

 

 

 

이것또한 정말 쉬운 문제이다

 

LIKE와 NOT LIKE만 알고있다면 손쉽게 풀 수 있다.

 

그리고 CONCAT으로 굳이 왜하냐 라고 하실 수 있는데

 

여기서 나온 문제처럼 간단하면 LIKE "Intact%"로 손쉽게 하면 되지만

 

나중에 실무에 들어가거나 어려운 sql문제를 풀어야 할때 종종 나오는 다양한 조건 이 있을 수 있기에

 

문자열을 합쳐주는 concat을 손에 익혀 놓는 것도 나쁘지않은 습관이라 생각한다.

 

(CONCAT은 괄호 안에 있는 문자들을 합쳐준다)

 

밑에는 전에도 말한것처럼 문제를 한줄한줄 나눠서 생각해보면 손쉽게 풀 수 있기에 풀이방법을 한줄한줄 설명하겠다.


풀이 방법!

#보호소에서 중성화 수술을 거친 동물 정보를 알아보려 합니다.

---> 이건 그냥 스토리

 

#보호소에 들어올 당시에는 중성화되지 않았지만,

---> 첫번째 조건

#보호소를 나갈 당시에는 중성화된 동물의

---> 두번째 조건

 

#아이디와 생물 종, 이름을 조회하는

---> SELECT를 어떤걸 표시해야하는지 알려주고 있다.

#아이디 순으로 조회하는 SQL 문을 작성해주세요

---> 정렬 즉 ORDER BY를 어떻게 해야하는지 알려주고있다.

 

 

 

 

 

오류나 궁금하신점은
아래 댓글로 알려주시면 감사하겠습니다.
728x90
반응형
LIST