[프로그래머스] 오랜 기간 보호한 동물(2)

yenpkr·2025년 2월 14일
0

sql

목록 보기
24/91

문제

제출

SELECT a.animal_id,a.name
from animal_ins as a
join animal_outs as b
on a.animal_id=b.animal_id
# 입양일-보호시작일
order by (b.datetime-a.datetime) desc
limit 2

📌 새로 배운 내용

  • 간단하게 일(day) 차이를 구할 때는 DATEDIFF 함수를 사용.

  • 이외에 연(year), 월(month), 시간(hour), 초(second) 등을 지정하여 구할 때는 TIMESTAMPDIFF 함수를 사용

✅ DATEDIFF

DATEDIFF(날짜1, 날짜2);
: 날짜1 - 날짜2

order by datediff(b.datetime,a.datetime) desc

b.datetime - a.datetime 값으로 내림차순 정렬

✅ TIMESTAMPDIFF

TIMESTAMPDIFF(단위, 날짜1, 날짜2);
: 날짜1 - 날짜2

  • 단위의 종류
    SECOND : 초
    MINUTE : 분
    HOUR : 시간
    DAY : 일
    WEEK : 주
    MONTH : 월
    QUARTER : 분기
    YEAR : 연도
order by TIMESTAMPDIFF(DAY,b.datetime,a.datetime) desc

또 다른 답

SELECT a.animal_id,a.name
from animal_ins as a
join animal_outs as b
on a.animal_id=b.animal_id
# 입양일-보호시작일
order by datediff(b.datetime,a.datetime) desc
limit 2

DATEDIFF 참조 블로그

0개의 댓글