Zeitunterschiede in MySQL berechnen
Sie haben eine MySQL-Tabelle mit Datums-/Uhrzeitwerten in einem bestimmten Format und möchten den Unterschied berechnen zwischen ihnen, dann summieren Sie die Ergebnisse, um die Gesamtstunden für einen bestimmten Zeitraum zu erhalten. Lassen Sie uns untersuchen, wie Sie dies erreichen können.
Verwendung von TIME_TO_SEC() und SEC_TO_TIME()
Die Funktion TIME_TO_SEC() konvertiert einen Zeitwert im Format „HH:MM: SS“ auf die Anzahl der Sekunden, die es darstellt. Um die Differenz zwischen zwei Zeitwerten zu berechnen, kann die folgende Formel verwendet werden:
TIME_DIFFERENCE = TIME_TO_SEC(END_TIME) - TIME_TO_SEC(START_TIME)
Da die gewünschte Ausgabe jedoch in Stunden erfolgt, müssen wir die Zeitdifferenz von Sekunden in Stunden umrechnen. Dies kann mit der Funktion SEC_TO_TIME() erfolgen:
TOTAL_HOURS = SEC_TO_TIME(TIME_DIFFERENCE)
Berechnung der Gesamtstunden
Um die Gesamtstunden für einen bestimmten Zeitraum, beispielsweise eine Woche, zu ermitteln , kann die folgende Abfrage verwendet werden:
SELECT SEC_TO_TIME( SUM( TIME_TO_SEC( `time` ) ) ) AS total_time FROM time_table;
In dieser Abfrage wird die Funktion TIME_TO_SEC() auf jeden Zeitwert in der Zeitspalte angewendet. Die Ergebnisse werden dann mit der Funktion SUM() summiert. Abschließend wird die Funktion SEC_TO_TIME() verwendet, um die Gesamtzahl der Sekunden in Stunden umzuwandeln und so die gewünschte Ausgabe bereitzustellen.
Das obige ist der detaillierte Inhalt vonWie kann ich die Gesamtarbeitsstunden einer Woche aus einer MySQL-Tabelle mit Zeitwerten berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!