Я бегу следующий запрос, но есть один случайный результат из функции TIMESTAMPDIFF, что возвращается отрицательное значение, только один:Почему я получаю случайное отрицательное число на mysql?
select JOB_ID,FROM_UNIXTIME(TIME_STARTED/1000) as TIME_STARTED,FROM_UNIXTIME(TIME_FINISHED/1000) as TIME_FINISHED,TIMESTAMPDIFF(SECOND,FROM_UNIXTIME(TIME_STARTED/1000, '%Y-%m-%d %h:%i:%s'),FROM_UNIXTIME(TIME_FINISHED/1000, '%Y-%m-%d %h:%i:%s')) AS DURATION from JOB;
Вот некоторые из возвращаемых данных:
| job_201306051933_0707 | 2013-06-10 23:16:57 | 2013-06-10 23:17:06 | 9 |
| job_201306051933_0832 | 2013-06-11 10:00:47 | 2013-06-11 10:29:03 | 1696 |
| job_201306051933_0850 | 2013-06-11 12:49:57 | 2013-06-11 13:18:30 | -41487 |
Опять же, это последнее единственное отрицательное значение, возвращаемое, и я не уверен, почему это так. любая помощь приветствуется.
Я знал, что это не может быть трудно. Благодаря! – user1745713
Я также нашел необычную альтернативу этому: SELECT *, TIMESTAMPDIFF (SECOND, TIME_STARTED, TIME_FINISHED) FROM (SELECT * FROM (SELECT JOB_ID, FROM_UNIXTIME (TIME_STARTED/1000) AS TIME_STARTED, FROM_UNIXTIME (TIME_FINISHED/1000) AS TIME_FINISHED FROM JOB WHERE USER_SUBMITTED = 'hddvmktg') AS TIMES) AS NEW; – user1745713