Различные значения для одних и тех же данных в Excel и MySql - PullRequest
0 голосов
/ 13 июня 2011

У меня большая проблема с суммой времени, моя таблица выглядит примерно так:

------------------------------------------
| User_ID |StartTime|EndTime  | TimeDiff |
------------------------------------------
|    1    |08:00:00 |09:00:00 | 01:00:00 |
------------------------------------------
|    1    |09:00:00 |10:00:00 | 01:00:00 |
------------------------------------------
|    2    |06:30:00 |07:00:00 | 00:30:00 |
------------------------------------------
|    2    |07:00:00 |09:00:00 | 02:00:00 |
------------------------------------------
|    2    |09:00:00 |10:00:00 | 01:00:00 |

с синтаксисом sql:

SELECT user_ID, TIME(SUM(TIMEDIFF(EndTime,StartTime)))
from timeTable
WHERE timeTable.user_ID=3387

в excel для моих реальных данных как результат суммы Iполучить 169:24:00, но в MySQL я получаю 164:04:00

Где мои 5 часов и 20 минут?

пс

пробовал:

SEC_TO_TIME(SUM(TIMEDIFF(TIME_TO_SEC(EndTime),TIME_TO_SEC(StartTime))))...

1 Ответ

0 голосов
/ 13 июня 2011

Имея дело с достаточным количеством вычислений даты и времени в Excel, я бы доверял итоговым данным из MySQL, а не по Excel. Способ, которым Excel обрабатывает вычисления времени, очень ненадежен и склонен терять несколько часов в больших суммах, поскольку он использует дроби для представления часов и минут вместо использования правильной структуры данных. У меня есть это сообщение и его родительское сообщение , чтобы показать это.

Чтобы ответить на ваш вопрос, потерянные 5 часов и 20 минут находятся в округлении дробей в Excel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...