У меня есть поле в моей таблице, в котором есть время для определенного действия. Записи, как 00:01:29
00:02:12
00:00:45
и т.д ...Рассчитать общее время в секундах
Теперь я хочу, чтобы получить сумму всех времени в секундах.
Я попытался это:
$time_for_correct_ans = Testlog::where('token', $exists->token)->where('correct', 1)->sum('answering_time');
Но он принял 00:01:29
в 129 seconds
, что неправильно. Есть ли лучший способ сделать это?
Я использую Laravel и MySQL.
Используйте http://php.net/manual/en/function.strtotime.php и получить секунды, добавьте результат и ... Вы знаете сделку. –
@ NicolásCarlo Нравится? '$ time_for_correct_ans = Testlog :: where ('токен', $ exists-> токен) -> где ('correct', 1) -> sum (strtotime ('answering_time'));' – user1012181
Вы должны хранить время как целые числа (секунды) вместо строк. Гораздо проще сделать арифметику именно так. – Dave