알고리즘은 다음과 같다.
DATE_DIFF
를 이용하여 대여 기간을 구한다.- 대여기간을
CASE WHEN
expression을 이용하여 장기 대여 인지 단기 대여인지 구분 한 후AS RENT_TYPE
으로 컬럼명 추가!WHERE LIKE
구문으로 대여 시작일이 2022년 9월에 속하는 대여 기록을 찾고ORDER BY
로 정렬- 이때 DATE TYPE은 모두
DATE_FORMAT
을 이용해서 년월일만 나오도록 한다.
SELECT HISTORY_ID
, CAR_ID
, DATE_FORMAT(START_DATE, '%Y-%m-%d') AS START_DATE
, DATE_FORMAT(END_DATE, '%Y-%m-%d') AS END_DATE
, CASE WHEN DATEDIFF(END_DATE, START_DATE)+1 >= 30 THEN '장기 대여'
ELSE '단기 대여'
END AS RENT_TYPE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE START_DATE LIKE '2022-09%'
ORDER BY HISTORY_ID DESC;