Post

[Programmers] 151138번 - 자동차 대여 기록에서 장기/단기 대여 구분하기 [MySQL]

[Programmers] 151138번 - 자동차 대여 기록에서 장기/단기 대여 구분하기 [MySQL]

문제 링크


1. 문제 풀이


DATEDIFF 함수로 대여 종료일과 대여 시작일의 차를 구할 수 있다. 대여 기간이 30일 이상인지는 대여 종료일과 대여 시작일의 차가 29일 이상이어야 한다.(대여 기간은 시작일과 종료일을 포함하므로)


2. 쿼리


1
2
3
4
5
6
7
8
9
SELECT
    HISTORY_ID,
    CAR_ID,
    DATE_FORMAT(START_DATE, '%Y-%m-%d'),
    DATE_FORMAT(END_DATE, '%Y-%m-%d'),
    IF(DATEDIFF(END_DATE, START_DATE) + 1 >= 30, '장기 대여', '단기 대여') AS RENT_TYPE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE START_DATE LIKE '2022-09%'
ORDER BY HISTORY_ID DESC;

This post is licensed under CC BY 4.0 by the author.