Średnia to różnica między pierwszym i ostatnim rekordem podzielona przez liczbę plus pewną liczbę.
SELECT (UNIX_TIMESTAMP(max(date(created)+1), min(date(created)))/1000)/(count(*)+2) AS timediffsecs
FROM Sessions
WHERE created BETWEEN DATE_SUB(NOW(), INTERVAL 4 DAYS) AND NOW()
Co to robi? Po pierwsze nie jest dodawaniem dodatkowych rekordów do danych. Zamiast tego po prostu zaokrągla w dół wcześniejszą datę i zaokrągla w górę datę późniejszą. UNIX_TIMETAMP
generuje wartości w milisekundach od pewnego momentu. Weź różnicę między największym a najmniejszym. Na koniec podziel przez liczbę napotkanych wierszy plus 2 (myślę, że powinna to być liczba plus 1, ale twoje pytanie mówi:liczba plus 2).