/ / mysql query, aby obliczyć średnie czasy między wpisami w danym zakresie dat [closed] - mysql

zapytanie mysql w celu obliczenia średnich czasów między wpisami w danym zakresie dat [closed] - mysql

Mam tabelę MYSQL, który ma następujące kolumny: entryDate, entryTime, entryAmt

Niektóre typowe wiersze wyglądałyby tak:

2013-01-02, 11:15:15, 30
2013-01-02, 11:52:10, 15
2013-01-02, 14:48:16, 15
2013-01-01, 10:10:11, 30
2013-01-01, 11:00:00, 15

itp...

Teraz moje pytanie brzmi: czy można to zrobić za pomocąKwerendy MYSQL, aby znaleźć średnią różnicę w czasie wartości aktywności jednego dnia w kolumnie entryTime? To jest na przykład chciałbym wiedzieć, jaki jest średni czas między każdym entryTime na dzień (na 2013-01-02, entryTimes to 11:15:15, 11:52:10 i 14:48:16. Chcę wiedzieć, ile czasu upłynęło od czasu do czasu).

Odpowiedzi:

1 dla odpowiedzi № 1

Spróbuj tego

SELECT `entryDate`,
SEC_TO_TIME(
CASE WHEN COUNT(`entryTime`) = 1 THEN 0
ELSE TIME_TO_SEC(TIMEDIFF(MAX(`entryTime`), MIN(`entryTime`))) / (COUNT(`entryTime`) - 1)
END) average
FROM entries
GROUP BY `entryDate`

Wydajność

+------------+----------+
| date       | average  |
+------------+----------+
| 2013-01-01 | 00:49:49 |
| 2013-01-02 | 01:46:31 |
+------------+----------+