MYSQL에서

DATEDIFF, TIMEDIFF 를 이용해 날짜 및 시간을 계산해보기로 합니다.

 

 

1. 날짜차이 계산하기 : DATEDIFF(expr1, expr2)

SELECT DATEDIFF('2016-04-20','2016-04-01') AS DiffDate

 > 결과값: 19

 

2. 시간차이 계산하기 : TIMESTAMPDIFF(시간표현단위, 시작체크시간, 종료체크시간)

SELECT TIMESTAMPDIFF(minute, '2016-04-20 01:01', '2016-12-31 23:59') AS time_diff;

 > 결과값: 368578(분)

 

* 시간표현단위: second, minute, hour, day, week, month, quarter, year

 

그런데 위와 같이 하면 문자열을 바로 계산하는 것으로 최대 1분까지 차이가 날 수 있다. 

따라서 아래와 같이 DATE 포멧으로 변경 후에 적용하면 더욱 더 정확하다.

 

3. 문자형에서 날짜형으로 데이터 전환 : DATE_FORMAT

SELECT TIMESTAMPDIFF(minute, 
      date_format('2016-04-20 01:01', '%Y-%m-%d %H:%i'), 
      date_format('2016-12-31 23:59', '%Y-%m-%d %H:%i')) AS time_diff;

 

 


네이버에서 티스토리로 글 이동 중입니다.

코딩 관련 글은 특히나 구글에서 유입이 많이 되서 고민 끝에 티스토리로 정착하게 되었습니다.

그동안 조회가 높았던 글부터 하나씩 편집해서 이 곳에 가지고 오도록 할께요~

 

같이 예쁘게 코딩하는 개발자가 되어보아요~ ㅎㅎ

혹시나 추가로 의견이 있으신 분은 댓글 언제든지 환영합니다.

 

 

+ Recent posts