Ich habe eine Tabelle, die alle 10 Sekunden mit Daten aktualisiert wird. Ich brauche einen Durchschnitt von 10 Minuten für 24 Stunden für ein bestimmtes Datum.MySQL Durchschnitt für 10 Minuten für 24 Stunden
Ich habe versucht, dies zu tun und die Zeit um 10 Minuten durch PHP erhöhen.
select AVG(active_energy), date_time from energy_readings where date_time between "2016-11-02 00:00:00" and "2016-11-02 00:00:00"+ INTERVAL 10 MINUTE;
und dann
select AVG(active_energy), date_time from energy_readings where date_time between "2016-11-02 00:10:00" and "2016-11-02 00:10:00"+ INTERVAL 10 MINUTE;
für 24 Stunden.
Es funktioniert, aber es dauert zu viel auf meinem Datenbankserver.
Gibt es eine einzige mysql-Abfrage, die ich verwenden kann, die mir 10 Minuten für 24 Stunden für einen bestimmten Tag gibt?
‚trunc‘ ist leider nicht verfügbar in MySQL. Versucht, stattdessen das Datum (Minute (Datum_Zeit)/6) zu verwenden. Aber das hat nicht funktioniert .. – NoMadic
Ich denke, Sie können 'DIV' Operator in diesem Fall wie folgt verwenden:' ... Gruppierung nach Datum (Datum_Zeit), Stunde (Datum_Zeit), Minute (Datum_Zeit) DIV 6 ... ' @NoMadic – 1000111
@NoMadic. . . Hoppla. Die richtige Funktion ist 'floor()'. –