Computer Knowledge/데이터베이스

[MYSQL] 자동차 평균 대여 기간 - GROUP BY, DATEDIFF

l._.been 2023. 5. 12. 16:38
728x90
문제

목적 : 자동차 평균 대여 기간 구하기

아웃풋 : 자동차 ID 평균 대여 기간

 

조건
1.평균 대여 기간이 7 이상인 자동차들의 자동차 ID
2.평균 대여 기간(컬럼명: AVERAGEDURATION)
3.평균 대여 기간은 소수점 두번째 자리에서 반올림
4.평균 대여 기간을 기준으로 내림차순 정렬
5.평균 대여 기간이 같으면 자동차 ID 기준으로 내림차순 정렬

 

ulr: https://school.programmers.co.kr/learn/courses/30/lessons/157342

 

프로그래머스

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

programmers.co.kr

 

핵심 능력

GROUP BY

HAVING

DATEDIFF

 

SELECT 
CAR_ID,
ROUND(SUM(DATEDIFF(END_DATE,START_DATE)+1)/ COUNT(CAR_ID), 1) AS AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY 1
HAVING AVERAGE_DURATION > 6
ORDER_BY AVERAGE_DURATION DESC, CAR_ID DESC;