728x90
힌트
- LEFT OUTER JOIN 사용:
- ANIMAL_INS 테이블의 모든 레코드와 ANIMAL_OUTS 테이블의 일치하는 레코드를 결합합니다.
- 이 때, ANIMAL_OUTS에 일치하는 레코드가 없는 경우에도 ANIMAL_INS의 레코드는 유지됩니다.
- 조건 필터링:
- WHERE 절에서 O.DATETIME IS NULL 조건을 사용하여, ANIMAL_OUTS에 없는 동물만 선택합니다.
- 즉, 아직 입양되지 않은 동물의 정보를 찾고 있습니다.
- 정렬 및 제한:
- ORDER BY I.DATETIME으로 입소 날짜를 기준으로 오름차순 정렬합니다.
- LIMIT 3을 사용하여 결과를 3개로 제한합니다.
정답은 더보기 클릭
더보기
더보기
SELECT I.NAME, I.DATETIME -- 동물의 이름과 입소 날짜 선택
FROM ANIMAL_INS I -- 입소 테이블에서 데이터 가져오기
LEFT OUTER JOIN ANIMAL_OUTS O -- 입소와 출소 테이블을 LEFT OUTER JOIN
ON I.ANIMAL_ID = O.ANIMAL_ID -- 동물 ID를 기준으로 조인
WHERE O.DATETIME IS NULL -- 출소 기록이 없는 동물 필터링
ORDER BY I.DATETIME -- 입소 날짜 기준으로 정렬
LIMIT 3 -- 결과를 3개로 제한
728x90
'프로그래머스(Oracle)' 카테고리의 다른 글
[프로그래머스 (Oracle)] 조건에 맞는 사용자와 총 거래금액 조회하기 (1) | 2024.10.02 |
---|---|
[프로그래머스 (Oracle)] 대여 기록이 존재하는 자동차 리스트 구하기 (4) | 2024.10.02 |
[프로그래머스 (Oracle)] 식품분류별 가장 비싼 식품의 정보 조회하기 (1) | 2024.10.01 |
[프로그래머스 (Oracle)] 보호소에서 중성화한 동물 (0) | 2024.10.01 |
[프로그래머스 (Oracle)] 진료과별 총 예약 횟수 출력하기 (0) | 2024.07.28 |