MYsql - получает среднее время между временем старта и остановки во многих строках - PullRequest
0 голосов
/ 02 января 2019

У меня есть следующие SQL и PHP, которые, кажется, не дают мне правильные числа. (ОЧЕНЬ высокие цифры)

У меня много строк с указанием времени начала и окончания. Я ищу среднее время между этими двумя разами.

Т.е.: 2 часа, 3 минуты, 46 секунд.

Это то, что у меня есть.

SELECT AVG(tmp.dd) AS timetook
  FROM 
     ( SELECT TIME_TO_SEC(TIMEDIFF(timeclosed, timeanswered)) AS dd 
         FROM logs 
        WHERE timeclosed > DATE_SUB(NOW(), INTERVAL 1 DAY)
     ) tmp;

Я иду по этому совершенно неправильному пути? Что-то явно не так здесь?

while($row = $result->fetch_assoc()) {
                                        $timetoclose = $row['timetook'];
                                        $hours = floor($timetoclose / 3600);
                                        $mins = floor($timetoclose / 60 % 60);
                                        $secs = floor($timetoclose % 60);
                                        $timetoclose = sprintf('%02d Hour(s), %02d Minute(s), %02d Second(s)', $hours, $mins, $secs);
                                }

Приветствие G

1 Ответ

0 голосов
/ 02 января 2019
SELECT SUM(TIMESTAMPDIFF(minute, start_time, end_time)) / COUNT(*) AS avg_minutes
FROM your_table

попробуйте этот запрос.

...