SQL/SQL문풀
[MY SQL] DATEDIFF와 TIMESTAMPDIFF 차이(날짜차이 구하기)
data_2080
2024. 7. 21. 23:51
728x90
0. MY SQL의 DATETIME 이해하기
DATEDIFF는 DATE와 DATETIME에만 적용 가능,
TIMESTAMPDIFF 는 DATETIME과 TIMESTAMP형식의 데이터에만 적용 가능
단, MYSQL에서는 VARCHAR 형식임에도 불구하고, DATEDIFF 및 TIMESTAMPDIFF 함수 사용 시
이를 날짜/시간 형식으로 인식하여 처리(내부적으로 문자열을 적절하게 파싱하여 처리하기 때문)
1. DATEDIFF()
2개 날짜의 차이를 반환
ex) DATEDIFF( '2020-07-21T10:34:51', '2020-07-20T9:34:50') => 1
DATEDIFF(date1, date2)
2. TIMESTAMPDIFF ()
2개 차이를 지정한 단위로 반환
ex) TIMESTAMPDIFF( MINUTE, '2020-07-21 09:34:50', '2020-07-21 10:34:51') => 60
*사용 가능한 단위
- FRAC_SECOND: 밀리초
- SECOND: 초
- MINUTE: 분
- HOUR: 시간
- DAY: 일
- WEEK: 주
- MONTH: 월
- QUARTER: 분기
- YEAR: 년
TIMESTAMPDIFF(unit, datetime1, datetime2)
[한줄 요약]
일자의 차이를 구하려면? DATEDIFF
일자보다 작은 단위, 더 큰 단위로 차이를 구하려면? TIMESTAMDIFF
728x90