Преобразование Integer в значение времени с использованием SQL - PullRequest
1 голос
/ 14 августа 2011

Поэтому я использую следующий запрос SQL для добавления всех значений времени в базе данных в поле часов базы данных журнала:

SELECT SUM(hours) FROM logbook

Но при получении вывода возникает проблема:

SUM(hours)
48514

Который почти там!

Что мне действительно нужно, так это:

04:85:14

Что находится в ЧЧ: ММ: СС

а затем оттуда узнайте, что ММ> 59 и, следовательно, округлите ЧЧ до одного, и, сказав это, подготовьтесь сделать это для всех трех разделов: ЧЧ ММ СС.

Но у меня естьПонятия не имею, как это сделать!

Спасибо за помощь, ребята!

1 Ответ

0 голосов
/ 14 августа 2011

Я думаю, что вы должны быть в состоянии сделать это внутри запроса, но если вам по какой-то причине нужно использовать php, вы можете попробовать это:

$hours = 48514;
function detailedHours($hours) {
    $hour = substr($hours,0,1);
    $minutes = substr($hours,1,2);
    $seconds = substr($hours,3,2);
    while($seconds>59) {
        $minutes++;
        $seconds-=60;
    }
    while($minutes>59) {
        $hour++;
        $minutes-=60;
    }
    return "$hour:$minutes:$seconds";
}
echo detailedHours($hours);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...