Heim > Datenbank > MySQL-Tutorial > Wie gruppiere ich MySQL-Zeitstempeldaten in benutzerdefinierte Zeitsegmente für Summen- und Durchschnittsberechnungen?

Wie gruppiere ich MySQL-Zeitstempeldaten in benutzerdefinierte Zeitsegmente für Summen- und Durchschnittsberechnungen?

Linda Hamilton
Freigeben: 2025-01-04 10:30:35
Original
988 Leute haben es durchsucht

How to Group MySQL Timestamp Data into Custom Time Segments for Sum and Average Calculations?

Gruppieren von Zeitsegmenten für Summen- und Durchschnittsberechnungen

In der MySQL-Datenbank können Sie zusammengefasste Daten aus einer Tabelle abrufen, die zeitgestempelte Datensätze mit variierenden Daten enthält Intervalle zwischen den Aufnahmen. Ihr Ziel besteht darin, diese Datensätze zu gruppieren und Summen- und Durchschnittswerte für bestimmte Zeitabschnitte zu berechnen, z. B. 10 Sekunden oder 30 Sekunden.

LÖSUNG

Der Schlüssel zur Gruppierung von Zeit Segmente liegt in der GROUP BY-Klausel. Um Daten basierend auf 30-Sekunden-Intervallen zu gruppieren und zusammenzufassen, verwenden Sie den folgenden Befehl:

GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 30
Nach dem Login kopieren

Dieser Ausdruck dividiert den Unix-Zeitstempel jedes Datensatzes durch 30 und rundet auf die nächste 30-Sekunden-Marke ab. Dadurch werden Datensätze innerhalb desselben 30-Sekunden-Intervalls gruppiert.

Zeitsegmentgrenzen anpassen

Sie können die Grenzen Ihrer Zeitsegmente durch Anpassen ändern der Nenner im DIV-Ausdruck. Um beispielsweise in 20-Sekunden-Intervallen zu gruppieren:

GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 20
Nach dem Login kopieren

Zeitsegmente puffern

Um Ihren Zeitsegmenten einen Puffer hinzuzufügen, können Sie die folgende Formel verwenden :

GROUP BY (UNIX_TIMESTAMP(time_stamp) + r) DIV 30
Nach dem Login kopieren

In diesem Ausdruck stellt r eine nicht negative ganze Zahl kleiner als 30 dar. Durch Hinzufügen eines Werts zum Zeitstempel können Sie überlappende Zeitabschnitte erstellen. Zum Beispiel:

GROUP BY (UNIX_TIMESTAMP(time_stamp) + 5) DIV 30
Nach dem Login kopieren

Diese Abfrage gruppiert Datensätze in Zeitsegmente von hh:mm:05 bis hh:mm:35 und von hh:mm:35 bis hh:mm 1:05.

Das obige ist der detaillierte Inhalt vonWie gruppiere ich MySQL-Zeitstempeldaten in benutzerdefinierte Zeitsegmente für Summen- und Durchschnittsberechnungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage