Разделить временные интервалы на 1-часовой интервал mysql - PullRequest
0 голосов
/ 21 мая 2019

У меня есть данные регистрации и проверки на уровне отметки времени

ID    checkin_datetime    checkout_datetime
4     04-01-2019 13:07    04-01-2019 13:09
4     04-01-2019 13:09    04-01-2019 13:12
4     04-01-2019 14:06    04-01-2019 14:07
4     04-01-2019 14:55    04-01-2019 15:06
22    04-01-2019 20:23    04-01-2019 21:32
22    04-01-2019 21:38    04-01-2019 21:42
25    04-01-2019 23:22    04-02-2019 00:23
29    04-02-2019 01:00    04-02-2019 06:15

Это вывод, который я ищу, где каждый интервал разбивается на часовые интервалы, которые могут быть по часам, дням и т. Д., Например:

ID       day         HR    Minutes
4     04-01-2019     13    2
4     04-01-2019     13    4
4     04-01-2019     14    1
4     04-01-2019     14    5
4     04-01-2019     14    2
22    04-01-2019     20    27
22    04-01-2019     21    33
25    04-01-2019     23    28
25    04-02-2019     0     23
29    04-02-2019     1     60
29    04-02-2019     2     60
29    04-02-2019     3     60
29    04-02-2019     4     60
29    04-02-2019     5     60
29    04-02-2019     6     15

1 Ответ

0 голосов
/ 21 мая 2019

Вы можете попробовать TIMESTAMPDIFF (unit, datetime_expr1, datetime_expr2) и просто добавить новый столбец в исходную таблицу, чтобы показать общую продолжительность каждого сеанса в минутах.

Я думаю, что выможет испортить ваши данные, разбивая их в 00:00 каждый новый день.То, что вы делаете таким образом, в основном говорит о том, что у пользователя с идентификатором 25 сеанса было два сеанса, хотя в действительности он / она был один, который начался в один день и закончился в другом.

Если это требование, возможно, оригинальная таблица нуждается в переработке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...