쉽고 깔끔하게
[프로그래머스 코딩 테스트 연습 SQL/MySQL] JOIN #2 있었는데요 없었습니다 문제풀이 본문
728x90
반응형

문제
programmers.co.kr/learn/courses/30/lessons/59043
코딩테스트 연습 - 있었는데요 없었습니다
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디
programmers.co.kr
관리자의 실수로 일부 동물의 입양일이 잘못 입력되었습니다. 보호 시작일보다 입양일이 더 빠른 동물의 아이디와 이름을 조회하는 SQL문을 작성해주세요.
이때 결과는 보호 시작일이 빠른 순으로 조회해야 합니다.
<정답>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SELECT ANIMAL_INS.ANIMAL_ID, ANIMAL_INS.NAME | |
FROM ANIMAL_INS INNER JOIN ANIMAL_OUTS ON ANIMAL_INS.ANIMAL_ID = ANIMAL_OUTS.ANIMAL_ID | |
WHERE ANIMAL_INS.DATETIME > ANIMAL_OUTS.DATETIME | |
ORDER BY ANIMAL_INS.DATETIME; |
[INNER JOIN]
INNER JOIN은 내부 결합으로 두 테이블의 교집합을 보여준다.

FROM 테이블명1 INNER JOIN 테이블명2 ON 결합조건
해당 문제는 입양일 (ANIMAL_OUTS의 DATETIME)이 보호 시작일(ANIMAL_INS의 DATETIME) 보다 빠른 동물의 ID와 이름을 조회하는 쿼리를 작성하는 것이다.
따라서 ANIMAL_INS와 ANIMAL_OUTS 테이블 모두에 존재하는 튜플을 조회해야 하기 때문에 테이블의 교집합을 조회하는 INNER JOIN을 사용하여 문제를 해결할 수 있었다.
728x90
반응형
'Algorithm > Programmers' 카테고리의 다른 글
[프로그래머스 코딩 테스트 연습 SQL/MySQL] JOIN #4 보호소에서 중성화한 동물 문제풀이 (0) | 2021.01.20 |
---|---|
[프로그래머스 코딩 테스트 연습 SQL/MySQL] JOIN #3 오랜 기간 보호한 동물(1) 문제풀이 (0) | 2021.01.20 |
[프로그래머스 코딩 테스트 연습 SQL/MySQL] JOIN #1 없어진 기록 찾기 문제풀이 (0) | 2021.01.19 |
[프로그래머스/python3] Level 1 정수 내림차순으로 배치하기 문제풀이 (0) | 2021.01.19 |
[프로그래머스/python3] Level 1 자릿수 더하기 문제풀이 (0) | 2021.01.19 |