сумма TIME в MYSQL

Baba

Новичок
сумма TIME в MYSQL

В PHP скрипте необходимо просуммировать временной интервал
В MYSQL базе есть поле INTERVAL типа time ,которое содержит
действительно временной интервал ( 01:10:00 или 00:50:30)

Необходимо SELECT SUM(INTERVAL) AS S_interval FROM .......

ТАК этот S_interval может быть больше (дольше!) 24 ЧАСОВ


Прошу поделиться мыслями
 

Baba

Новичок
и чо?

если выполнить этот SELECT для ( 01:10:00 или 00:50:30)

получить можно 16030 и куду дальше это использовать
и время ли это
 

Фанат

oncle terrible
Команда форума
я думаю, тебе следует суммировать результат SEC_TO_TIME
интересно, сработает ли такая конструкция
select TIME_TO_SEC(sum( SEC_TO_TIME(time)))
 

Baba

Новичок
Продолжение вопроса:
Про SQL
Сама агрегатная функция SUM() может использовать только
числовые поля

А как поступить с полями типа time?
 

Baba

Новичок
Вы правы, надо так

SELECT SEC_TO_TIME(sum( TIME_TO_SEC(time)))

пока временной интервал не превышает сутки 24 часа
Спасибо
 

Фанат

oncle terrible
Команда форума
почему пока не превышает?
какая проблема ,если превысит?
 

Baba

Новичок
Когда суммируешь интервалы за месяц, то в секундах получаешь предположим (значения реальные)
sum( TIME_TO_SEC(time))
112554
если 112554/3600=больше 31 часа
а когда выполняешь
SEC_TO_TIME(sum( TIME_TO_SEC(time)))
7:15:54
Возможно 1час=3600 здесь требуется еще какой-то множитель
 

Фанат

oncle terrible
Команда форума
это точно?
тип тайм может принимать значение до 800:00:00
видимо, тогда функция глючит
 

Baba

Новичок
да точно
можно видеть 31-24=7часов15:54
Получив интервал времени в секундах, продолжу в PHP
Спосибо
 
Сверху