happy coding

[programmers] 자동차 평균 대여 기간 구하기 본문

self study/Database

[programmers] 자동차 평균 대여 기간 구하기

yeoonii 2023. 8. 15. 16:13
SELECT CAR_ID, 
    CASE
        WHEN ROUND(AVG(DATEDIFF(END_DATE, START_DATE)), 1) >= 7 THEN ROUND(AVG(DATEDIFF(END_DATE, START_DATE)), 1)
        ELSE 0
    END AS AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
HAVING AVERAGE_DURATION != 0
ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC;

이따구로 짰는데 결과는 '틀렸습니다.'였다. 너무 복잡하게 한 것 같아서 다시 코딩

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 AVERAGE_DURATION >= 7
ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC;

날짜 계산할 때 +1 해야 하는 점은 왜 매번 까먹는 것인가. 잊지 말자.

Comments