рассчитать время с флагом / статусом в MySQL запрос

Пожалуйста, помогите мне в запросе MySQL.
Как рассчитать время от date_in со статусом (ON / OFF).
Пример данных, как это:

------------------------------
статус | date_in
------------------------------
ON | 2017-10-27 23:30:37
ON | 2017-10-28 01:08:40
ON | 2017-10-28 01:10:43
ВЫКЛ | 2017-10-28 01:15:51
ВЫКЛ | 2017-10-28 01:26:28
ON | 2017-10-28 01:30:33
ON | 2017-10-28 02:00:15
------------------------------

и результат хочет вот так:

-----------------------------------------------
статус | date_in | Diff (чч: мм: сс)
-----------------------------------------------
ON | 2017-10-27 23:30:37 | ON: 00: 00: 00
ON | 2017-10-28 01:08:40 | ON: 01: 38: 03
ON | 2017-10-28 01:10:43 | ON: 00: 02: 03
ВЫКЛ | 2017-10-28 01:15:51 | OFF: 00: 00: 00
ВЫКЛ | 2017-10-28 01:26:28 | OFF: 00: 10: 17
ON | 2017-10-28 01:30:33 | ON: 00: 00: 00
ON | 2017-10-28 02:00:15 | ON: 00: 29: 42
------------------------------------------------

ON: 00:00:00 + 01:38:03 + 00:02:03 + 00:00:00 + 00:29:42
= 02:09:48 / 2 часа, 9 минут, 48 секунд

ВЫКЛ: 00:00:00 + 00:10:17
= 00:10:17 / 0 час 10 минут 17 секунд

Спасибо большое за помощь мне …

dede.tar.gz@gmail.com

-1

Решение

чтобы посчитать разницу во времени, нужно различать две отметки времени .. но ваш вопрос недостаточно ясен ..

SELECT TIMEDIFF('2009-05-18 15:45:57.005678','2009-05-18 13:40:50.005670');

у вас есть date_in .. чтобы получить другое время вам нужно date_out, чтобы получить другое значение.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector