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

MySQL에서 두 시간 값의 차이를 계산하는 방법 – TIMEDIFF() 함수 활용법

MySQL에서 두 시간 값 사이의 차이를 계산해야 할 때가 종종 있습니다. 예를 들어 작업 시작 시간과 종료 시간의 간격을 구하거나, 두 이벤트 발생 시점의 차이를 확인하고 싶은 경우가 그렇습니다. 이럴 때 TIMEDIFF() 함수를 사용하면 매우 간단하게 해결할 수 있습니다.

TIMEDIFF() 함수란?

TIMEDIFF()는 MySQL에서 제공하는 날짜·시간 관련 내장 함수로, 두 개의 시간(time) 또는 날짜-시간(datetime) 표현식을 인자로 받아 그 차이를 시간 값으로 반환합니다. 반환되는 결과는 'HH:MM:SS' 형식으로 표시됩니다.

사용 문법

TIMEDIFF(time1, time2)

첫 번째 인자에서 두 번째 인자를 뺀 값이 결과로 반환됩니다. 즉, time1 - time2의 결과입니다.

예제

다음은 '04:05:45'와 '03:05:45'라는 두 시간 값의 차이를 구하는 예제입니다.

mysql> SELECT TIMEDIFF('04:05:45', '03:05:45') AS 'Difference in Time';
+---------------------------------+
| Difference in Time              |
+---------------------------------+
| 01:00:00                        |
+---------------------------------+
1 row in set (0.00 sec)

실행 결과를 보면 두 시간 값의 차이인 '01:00:00', 즉 정확히 1시간의 차이가 반환된 것을 확인할 수 있습니다.

참고 사항

  • TIMEDIFF()에 전달하는 두 인자는 반드시 같은 유형(둘 다 TIME 또는 둘 다 DATETIME)이어야 합니다.
  • 결과 값의 범위는 '-838:59:59'부터 '838:59:59'까지로 제한됩니다.
  • 날짜까지 포함한 차이를 구하려면 TIMESTAMPDIFF() 함수를 사용하는 것이 더 적합할 수 있습니다.