본문 바로가기
Computer/Algorithm_SQL

[Algorithm_SQL] 오랜 기간 보호한 동물(2) (Success)

by HJ0216 2023. 10. 18.
 

프로그래머스

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

programmers.co.kr

 

🙂 확인 사항

1. ANIMAL_INS, ANIMAL_OUTS 테이블

2. 입양을 간 동물

3. 보호 기간이 가장 길었던 동물 2마리

4. 아이디, 이름 조회

5. 보호기간 내림차순 정렬

 

 

📝 Language: Oracle

1
2
3
4
5
6
7
8
9
   SELECT AO.ANIMAL_ID, AO.NAME
     FROM ANIMAL_INS AI
LEFT JOIN ANIMAL_OUTS AO
       ON AI.ANIMAL_ID=AO.ANIMAL_ID
    WHERE AO.ANIMAL_ID IS NOT NULL
 ORDER BY (AO.DATETIME - AI.DATETIME) DESC
    FETCH FIRST 2 ROWS ONLY
;
 
 

* Left Join

    - Full Join: Animal_ins에 포함되지 않은 Animal_outs 값이 도출될 수 있음

 

1
2
3
4
5
6
7
8
9
10
11
12
SELECT * 
  FROM (
     SELECT AO.ANIMAL_ID, AO.NAME
       FROM ANIMAL_INS AI
  LEFT JOIN ANIMAL_OUTS AO
         ON AI.ANIMAL_ID=AO.ANIMAL_ID
      WHERE AO.ANIMAL_ID IS NOT NULL
   ORDER BY (AO.DATETIME - AI.DATETIME) DESC
)
 WHERE ROWNUM <= 2
 ;
 
 

Inline View

 

 

 

🔗 소스 코드
GitHub