Miałem podobne pytanie:collating-stats-into-time-chunks i otrzymał odpowiedź bardzo dobrze. Zasadniczo odpowiedź brzmiała:
Być może możesz użyć funkcji DATE_FORMAT() i grupowania. Oto przykład, miejmy nadzieję, że możesz dostosować się do swoich konkretnych potrzeb.
SELECT
DATE_FORMAT( time, "%H:%i" ),
SUM( bytesIn ),
SUM( bytesOut )
FROM
stats
WHERE
time BETWEEN <start> AND <end>
GROUP BY
DATE_FORMAT( time, "%H:%i" )
Jeśli Twoje okno czasowe obejmuje więcej niż jeden dzień i używasz przykładowego formatu, dane z różnych dni będą agregowane w zasobnikach „godziny dnia”. Jeśli nieprzetworzone dane nie przypadają dokładnie na godzinę, możesz je wygładzić, używając „%H:00”.
Dziękuję Martinowi Claitonowi za odpowiedź, której mi udzielił.