MySQL Group by specific 24 hour interval -
i have mysql table, timestamps values in each row. objective sum values of amount column, , group custom 24 hour interval, starting 05:30:00 every day.
input:
timestamp amount -------------- ------ 2015-01-19 08:30:12 4 2015-01-19 15:37:40 2 2015-01-20 01:57:38 2 2015-01-20 07:10:07 4 2015-01-20 22:10:38 2 2015-01-21 08:35:55 4
expected:
interval sum(amount) ------------- ----------- 2015-01-19 05:30:00 - 2015-01-20 05:30:00 8 2015-01-20 05:30:00 - 2015-01-21 05:30:00 6 2015-01-21 05:30:00 - 2015-01-22 05:30:00 4
i have tried implementing solution(s) presented here groupinginto interval of 5 minutes within time range , here mysql group 24 hour intervals - without success.
you can subtracting 5.5 hours , aggregating date:
select date_add(date(timestamp - interval (5*60 + 30) minute), interval (5*60 + 30) minute) interval_start, date_add(date(timestamp - interval (5*60 + 30) minute), interval (24*60 + 5*60 + 30) minute) interval_end, count(*) cnt t group date(timestamp - interval (5*60 + 30) minute) order interval_start;
Comments
Post a Comment