[프로그래머스_SQL] 자동차 대여 기록에서 장기/단기 대여 구분하기
📜문제
https://school.programmers.co.kr/learn/courses/30/lessons/151138
📜정답
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,IF(DATEDIFF(END_DATE,START_DATE)+1 >= 30, '장기 대여','단기 대여') AS RENT_TYPE FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE SUBSTR(START_DATE,1,7)='2022-09' ORDER BY HISTORY_ID DESC
📜노트
DATEIFF(구분단위, 끝날짜, 시작날짜)
DATEIFF함수
는 날짜의 차이를 계산해주는 함수이다.
- 구분단위
- YEAR : 연도차이
- MONTH : 월차이
- DAY : 일차이
또한 날짜를 계산하면 +1을 해줘야 한다.
IF(조건, ‘참일 때 값’, ‘거짓일 때 값’)
IF함수
는 조건함수로 조건에 맞으면 1번째 값이 되고 맞지 않으면 2번째 값을 가지게 된다.