Mysql вычисляет секунды между двумя датами/временем для каждого дня
У меня есть эта таблица, но я беспомощна, как вычислять секунды за каждый отдельный день из этой таблицы:
id from to
---------------------------------------------------
1 2013-01-31 23:50:00 2013-02-02 09:00:00
2 2013-02-05 11:21:12 2013-02-08 01:01:01
3 2013-02-08 17:33:44 2013-02-08 18:22:55
4 2013-02-12 01:40:12 2013-02-12 02:00:59
5 2013-02-28 01:40:12 2013-03-02 02:00:59
Теперь мне нужно получить количество секунд для каждого дня в феврале между и с.
так что за 1 февраля - x секунд, 2 февраля - y секунд, 3 февраля - 0 секунд и т.д. Любая идея, как мне это сделать? Большое спасибо.
Ответы
Ответ 1
Используйте TIMESTAMPDIFF в MySQL:
SELECT TIMESTAMPDIFF(SECOND,from,to);
Пример:
SELECT TIMESTAMPDIFF(SECOND,'2016-01-01 00:00:00','2016-01-11 00:00:00'); -- 864000
SELECT TIMESTAMPDIFF(MINUTE,'2016-01-01 00:00:00','2016-01-11 00:00:00'); -- 14400
SELECT TIMESTAMPDIFF(HOUR,'2016-01-01 00:00:00','2016-01-11 00:00:00'); -- 240
SELECT TIMESTAMPDIFF(DAY,'2016-01-01 00:00:00','2016-01-11 00:00:00'); -- 10