Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL DATEDIFF() 함수의 작동 방식 완벽 정리

MySQL DATEDIFF() 함수란?

MySQL의 DATEDIFF() 함수는 두 날짜 사이의 일수 차이를 계산하여 반환하는 함수입니다. 데이터베이스에서 기간을 계산해야 하는 다양한 상황에서 유용하게 활용됩니다.

기본 문법

DATEDIFF(date1, date2)

이 함수는 date1에서 date2를 뺀 값, 즉 두 날짜 사이의 일수를 반환합니다. 결과가 양수이면 date1이 더 늦은 날짜이고, 음수이면 date2가 더 늦은 날짜라는 의미입니다.

사용 예시

예를 들어, '2017-10-22'와 '2017-09-21' 두 날짜 사이의 일수를 알고 싶다면 다음과 같이 DATEDIFF() 함수를 사용할 수 있습니다.

mysql> Select DATEDIFF('2017-10-22','2017-09-21') AS 'NUMBER OF DAYS';

+----------------+
| NUMBER OF DAYS |
+----------------+
|         31  |
+----------------+
1 row in set (0.00 sec)

위 쿼리의 실행 결과를 보면 두 날짜 사이의 차이가 31일임을 확인할 수 있습니다.

참고 사항

DATEDIFF() 함수는 날짜 부분만 비교하며 시간(시, 분, 초)은 계산에 포함되지 않습니다. 따라서 시간까지 포함한 정밀한 차이를 구해야 한다면 TIMESTAMPDIFF() 함수를 사용하는 것이 좋습니다. 또한 인자로 전달되는 값은 유효한 DATE 또는 DATETIME 형식이어야 하며, 잘못된 형식의 날짜가 입력되면 NULL을 반환합니다.