SELECT *
FROM TABLE AS A
WHERE EXISTS (
SELECT *
FROM TABLE AS B
WHERE DATE_SUB(A.created_on, INTERVAL 5 SECOND) <= B.created_on
AND B.created_on < A.created_on
)
Вы понимаете, что это в основном удалит все цепочки событий в течение 5 секунд друг от друга, кроме первого события в цепочке.
Поскольку вы не можете создать псевдоним таблицы в DELETE, вам придется сделать что-то вроде этого:
DELETE
FROM so902859
WHERE created_on IN (
SELECT created_on
FROM so902859 AS A
WHERE EXISTS ( SELECT *
FROM so902859 AS B
WHERE DATE_SUB(A.created_on, INTERVAL 5 SECOND) <= B.created_on
AND B.created_on < A.created_on ) )
Есть миллион способов скинов для этой кошки с помощью JOIN или чего-то еще. Я думаю, что этот текст наиболее понятен, хотя и немного длинен.