1. 程式人生 > >Mysql每天以兩個小時為一個時段統計一天內各個時段的資料增量的解決辦法

Mysql每天以兩個小時為一個時段統計一天內各個時段的資料增量的解決辦法

最近在研究報表,要做一個實時的統計一天各個時段的資料增量,以2小時為一組統計,發現這個sql語句不簡單,和大家分享一下我的寫法。

做出來的效果如下:

sql語句如下:

select count(distinct ro.retailUserId) AS retailUser,
DATE_FORMAT(DATE_ADD(CONCAT(DATE_FORMAT(ro.createdTime, '%Y-%m-%d    %H:'),
(FLOOR(DATE_FORMAT(ro.createdTime, '%i') / 60))*60,':00'),INTERVAL 2 HOUR),'%H:%i:%s')
currentTime
from retail_order ro
where ro.status not in ('4','6')
and ro.createdTime>=CURDATE()
and ro.createdTime<DATE_ADD(CURDATE(),INTERVAL 1 DAY)    
GROUP BY currentTime ORDER BY NULL