У меня есть такая таблица:

enter image description here

И в этой таблице вы можете увидеть последний столбец totalloginFinal, я хочу сделать сумму за все время, это будет около 84 часов,

Я пытаюсь использовать функции addtime и sum, но не получаю должного результата.

Заранее большое спасибо.

1
Bajrang 29 Авг 2011 в 10:50

2 ответа

Лучший ответ

Попробуйте этот вариант -

SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(totalloginFinal))) FROM table_name;

Из справки - Агрегатные функции SUM () и AVG () не работают с временными значениями. (Они преобразуют значения в числа, при этом часть после первого нечислового символа теряется.) Чтобы обойти эту проблему, вы можете преобразовать в числовые единицы, выполнить агрегатную операцию и преобразовать обратно во временное значение.

GROUP BY (агрегированные) функции.

0
Devart 29 Авг 2011 в 07:01

Попробуйте преобразовать его в секунду а затем суммируйте секунды и преобразуйте их обратно из секунды в время

Любить :

SELECT SEC_TO_TIME(SUM(SECOND(totalloginFinal))) as Total from mytable
0
Haim Evgi 29 Авг 2011 в 06:58