Ако искате да знаете колко често (средно) е бил вмъкнат ред, не мисля, че трябва да изчислявате всички разлики. Трябва само да сумирате разликите между съседни редове (съседни въз основа на времевата марка) и да разделите резултата на броя на сумите.
Формулата
((T1-T0) + (T2-T1) + … + (TN-TN-1)) / N
очевидно може да бъде опростен само до
(TN-T0) / N
Така че заявката би била нещо подобно:
SELECT TIMESTAMPDIFF(SECOND, MIN(date), MAX(date)) / (COUNT(*) - 1)
FROM atable
Уверете се, че броят на редовете е повече от 1, в противен случай ще получите грешка за разделяне на нула. Все пак, ако желаете, можете да предотвратите грешката с прост трик:
SELECT
IFNULL(TIMESTAMPDIFF(SECOND, MIN(date), MAX(date)) / NULLIF(COUNT(*) - 1, 0), 0)
FROM atable
Сега можете безопасно да стартирате заявката срещу таблица с един ред.