시간차이를 구하는 방법은 몇 개 없다.
TIMEDIFF(끝시간, 시작시간) -> TIME형식 반환, HH:MM:SS, 범위: -838:59:59 ~ 838:59:59DATEDIFF(끝시간, 시작시간) -> INT 반환TIMESTAMPDIFF(단위, 끝시간, 시작시간) -> INT 반환. 시간차를 단위로 바꿔서 정수로 반환한다.단위: SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR사실상
TIMESTAMPDIFF하나만 정확히 알고 있으면 대부분의 시간차를 구할 수 있다.
SELECT
DATEDIFF(O.DATETIME, I.DATETIME), # 며칠 차이?
TIMEDIFF(O.DATETIME, I.DATETIME), # 몇시간 차이? HH:MM:SS
TIMESTAMPDIFF(WEEK, O.DATETIME, I.DATETIME) # 몇주 차이?
FROM
ANIMAL_OUTS O LEFT JOIN ANIMAL_INS I # in시간과 out시간이 기록된 테이블 조인
ON O.ANIMAL_ID = I.ANIMAL_ID