본문 바로가기

프로그래머스

(MySQL / 프로그래머스) 있었는데요 없었습니다

728x90
반응형
SMALL


있었는데요 없었습니다


 



문제 출처

코딩테스트 연습 - 있었는데요 없었습니다 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr



Code

SELECT A.ANIMAL_ID, A.NAME
FROM ANIMAL_INS A JOIN ANIMAL_OUTS B ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE A.DATETIME > B.DATETIME
ORDER BY A.DATETIME

#관리자의 실수로 일부 동물의 입양일이 잘못 입력되었습니다.
#보호 시작일보다 입양일이 더 빠른 동물의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 
#이때 결과는 보호 시작일이 빠른 순으로 조회해야합니다.

 

 

정말 쉬운 문제이다

 

쿼리문제는 문제만 잘 이해한다면 정말 어렵지 않다.(결국 영어 문장이기때문에)

 

먼저 DATE도 '>', '<'를 통해 대소를 구분할 수 있다는 점만 알고 있으면 정말 쉽게 풀 수 있다.

 

JOIN은 프라이머리키를 찾아 일단 묶어주고

 

조건이 보호 시작일 보다 입양날짜가 더 빠른 동물을 찾는 것이니 손쉽게 구할 수 있을 것이다.

 

TIP인데 문제가 이해가 안된다면 나처럼 문단마다 띄워서 생각해보자


EX)

#관리자의 실수로 일부 동물의 입양일이 잘못 입력되었습니다.

---> 이건 그냥 스토리

 

#보호 시작일보다 입양일이 더 빠른 동물의 아이디와 이름을 조회하는 SQL문을 작성해주세요.

---> 조건이다 즉 조건문인 WHERE에 써야한다는 것이다.

 

#이때 결과는 보호 시작일이 빠른 순으로 조회해야합니다.

---> 정렬을 어떻게 하는지 알려주고있다. 빠른순이니 ASC 즉 오름차순으로 정렬하면 된다.(+@ 최근순이면 내림차순이니 DECS)

 

 

 

 

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