Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Agregacja danych według przedziałów czasowych w MySQL

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ł.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wyświetlić pełne zapytanie z POKAŻ LISTĘ PROCESÓW

  2. mój skrypt nodejs nie kończy pracy sam po pomyślnym wykonaniu

  3. Łączna suma MYSQL według daty

  4. Dlaczego funkcja POKAŻ STATUS TABELI w innodb jest tak niewiarygodna?

  5. Jak mysql może szybciej wstawiać miliony rekordów?