프로그래머스 SQL
오랜기간 보호한 동물(2)
cosmohoo
2022. 7. 22. 21:37
반응형
예시
예를 들어, ANIMAL_INS 테이블과 ANIMAL_OUTS 테이블이 다음과 같다면
ANIMAL_INS
ANIMAL_IDANIMAL_TYPEDATETIMEINTAKE_CONDITIONNAMESEX_UPON_INTAKE
A354597 | Cat | 2014-05-02 12:16:00 | Normal | Ariel | Spayed Female |
A362707 | Dog | 2016-01-27 12:27:00 | Sick | Girly Girl | Spayed Female |
A370507 | Cat | 2014-10-27 14:43:00 | Normal | Emily | Spayed Female |
A414513 | Dog | 2016-06-07 09:17:00 | Normal | Rocky | Neutered Male |
ANIMAL_OUTS
ANIMAL_IDANIMAL_TYPEDATETIMENAMESEX_UPON_OUTCOME
A354597 | Cat | 2014-06-03 12:30:00 | Ariel | Spayed Female |
A362707 | Dog | 2017-01-10 10:44:00 | Girly Girl | Spayed Female |
A370507 | Cat | 2015-08-15 09:24:00 | Emily | Spayed Female |
SQL문을 실행하면 다음과 같이 나와야 합니다.
ANIMAL_IDNAME
A362707 | Girly Girl |
A370507 | Emily |
※ 입양을 간 동물이 2마리 이상인 경우만 입력으로 주어집니다.
=> DATETIME형으로 계산을 할 수 있는지 묻는 문제였습니ㅏㄷ.
=> DATETIME으로 계산을 하여 서브쿼리를 작성합니다.
=> 서브쿼리에서 만들어진 임시테이블에서 원하는 값을 2개 추출합니다.
select *
from(
select A.ANIMAL_ID, A.name
from ANIMAL_INS A, ANIMAL_OUTS B
where A.ANIMAL_ID = B.ANIMAL_ID
order by B.DATETIME-A.DATETIME desc
)
where rownum <3;
반응형