문제 설명

입출력 예

풀이
SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_DATE, START_DATE)) + 1, 1) AS "AVERAGE_DURATION"
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID HAVING ROUND(AVG(DATEDIFF(END_DATE, START_DATE) + 1), 1) >= 7
ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC;
후기
날짜와 날짜 사이가 몇 일인지 구하는 함수를 알고 있어야 편하게 풀 수 있다. 그리고 두 날짜의 차이를 구하는 것이므로 1을 더해주어야 한다.
'코딩테스트 (프로그래머스) > SQL' 카테고리의 다른 글
| [프로그래머스][MySQL][Lv. 3] 대장균의 크기에 따라 분류하기 2 (0) | 2025.12.31 |
|---|---|
| [프로그래머스][MySQL][Lv. 1] 특정 옵션이 포함된 자동차 리스트 구하기 (0) | 2023.05.21 |
| [프로그래머스][MySQL][Lv. 3] 조건에 맞는 사용자와 총 거래금액 조회하기 (0) | 2023.05.21 |
| [프로그래머스][MySQL][Lv. 3] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 (0) | 2023.05.14 |
| [프로그래머스][MySQL][Lv. 1] 조건에 부합하는 중고거래 댓글 조회하기 (0) | 2023.05.14 |