단순히 일 차이를 가져올 때는 DATEDIFF 함수를
날짜 차이를 연, 분기, 월, 주, 일, 시, 분, 초를 지정해서 가져올 때는 TIMESTAMPDIFF 함수를 사용
DATEDIFF
DATEDIFF(date1, date2); // date2 - date1
TIMESTAMPDIFF
TIMESTAMPDIFF(unit, date1, date2);
단위
- SECOND : 초
- MINUTE : 분
- HOUR : 시
- DAY : 일
- WEEK : 주
- MONTH : 월
- QUARTER : 분기
- YEAR : 연
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,
CASE
WHEN DATEDIFF(END_DATE, START_DATE) + 1 >= 30 THEN "장기 대여"
ELSE "단기 대여"
END AS RENT_TYPE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE MONTH(START_DATE) = "9"
ORDER BY HISTORY_ID DESC
source
https://extbrain.tistory.com/78
'Database > SQL' 카테고리의 다른 글
[MySQL] GROUP BY와 HAVING (0) | 2022.12.04 |
---|---|
[MySQL] MySQL NULL 처리 - IFNULL, CASE, COALESCE (1) | 2022.11.21 |
[MySQL] DB, Table import & export (0) | 2022.10.19 |
[MySQL] MySQL 명령어 (0) | 2022.10.18 |
[MySQL] 데이터 베이스 인덱스 (0) | 2022.10.08 |