[SQL] 시간 반올림 두 날짜 사이의 차이를 가져 오는 방법
SQL시간 반올림 두 날짜 사이의 차이를 가져 오는 방법
나는 다음 예에서 얻을 싶은 것이 설명합니다 :
'2010-09-01 03:00:00' - '2010-09-01 00:10:00'
TIMEDIFF ()를 사용하여, 우리는 결과로 2를 얻을. 이 방법은, 그것은 왼쪽으로 50 분 고려하지 않고있다.
이 경우에는, 제가 좀하고 싶습니다 것은 : 50 (분) / 60 = 0.83 기간. 따라서, 결과는 2.83 아닌 2이어야한다.
해결법
-
==============================
1.
select time_to_sec(timediff('2010-09-01 03:00:00', '2010-09-01 00:10:00' )) / 3600; +-----------------------------------------------------------------------------+ | time_to_sec(timediff('2010-09-01 03:00:00', '2010-09-01 00:10:00' )) / 3600 | +-----------------------------------------------------------------------------+ | 2.8333 | +-----------------------------------------------------------------------------+
-
==============================
2.나는 더 완전한 대답은 생각
나는 더 완전한 대답은 생각
select time_format(timediff(onedateinstring,anotherdateinstring),'%H:%i:%s')
이것은 당신이 원하는 형식으로보고 싶은 등 시간, 분, 초를 볼 수 있습니다 ...
TIME_FORMAT에 대한 자세한 정보 : http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_time-format
-
==============================
3.시간의 정확한 숫자에 대한 사용 TIMESTAMPDIFF :
시간의 정확한 숫자에 대한 사용 TIMESTAMPDIFF :
SELECT b.`Start_Date`, b.`End_Date`, TIMESTAMPDIFF(HOUR, b.`Start_Date`, b.`End_Date`) AS `HOURS` FROM my_table b;
-
==============================
4.다음을 시도해 볼 수도 있습니다 :
다음을 시도해 볼 수도 있습니다 :
time_format(timediff(max(l.fecha), min(l.fecha) ),'%H:%m') //Hora y minutos
-
==============================
5.그것의 아주 오래된 스레드,하지만 당신은 또한 TIMESTAMPDIFF을 시도하고 규정과 같은 분, 시간 (초)을 제공 할 수 있습니다.
그것의 아주 오래된 스레드,하지만 당신은 또한 TIMESTAMPDIFF을 시도하고 규정과 같은 분, 시간 (초)을 제공 할 수 있습니다.
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_timestampdiff
-
==============================
6.타임 스탬프 사이의 시간 수를 얻을 MYSQL :
타임 스탬프 사이의 시간 수를 얻을 MYSQL :
select timestampdiff(second,'2010-09-01 00:10:00', '2010-09-01 03:00:00')/3600;
-
==============================
7.당신이 타임 스탬프를 사용하는 경우,이 SQL을 사용하여 MySQL의에서 해결책이 될 수 있습니다.
당신이 타임 스탬프를 사용하는 경우,이 SQL을 사용하여 MySQL의에서 해결책이 될 수 있습니다.
SELECT TIMESTAMPDIFF(HOUR, '2010-11-29 13:13:55', '2010-11-29 13:16:55') as newtable; | newtable | 7 1 row in set (0.01 sec)
-
==============================
8.UNIX_TIMESTAMP 사용 :
UNIX_TIMESTAMP 사용 :
SELECT (UNIX_TIMESTAMP(End)-UNIX_TIMESTAMP(Start))/3600) AS Difference_in_hours FROM Table
from https://stackoverflow.com/questions/3621440/how-to-get-the-difference-between-two-dates-rounded-to-hours by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 왼쪽에 참여 이용한 1 대 다수의 관계에서 첫 번째 레코드를 선택 (0) | 2020.06.25 |
---|---|
[SQL] 검색어 "사이"오라클 날짜 (0) | 2020.06.25 |
[SQL] MYSQL 구문은 NULL의 존재하에 동일하지 평가하지 (0) | 2020.06.25 |
[SQL] 조건의 경우와 업데이트의 MySQL (0) | 2020.06.25 |
[SQL] 검색 데이터베이스에 문자열의 일부를 대체 (0) | 2020.06.25 |