Du kan selv deltage i bordet, noget som dette virker i dit tilfælde:
SELECT
*
FROM
yourTable a
INNER JOIN yourTable b ON a.ID = b.ID + 1
WHERE TIMESTAMPDIFF(second, a.timestamp, b.timestamp) > 60
Men det kan blive grimt, når du har huller i din ID-kolonne. Og især kan det blive grimt (i forhold til ydeevne (når man ikke har gode indekser på bordet)), når man har *masser af data.
Så jeg vil foreslå at bruge lidt mere avancerede forespørgsler ved hjælp af variabler. Uden behov for at slutte bordet til sig selv, kører dette typisk ret hurtigt:
SELECT * FROM (
SELECT
yt.*,
TIMESTAMPDIFF(second, @prevTS, `timestamp`) AS timedifference,
@prevTS:=yt.`timestamp`
FROM
yourTable yt
, (SELECT @prevTS:=(SELECT MIN(`timestamp`) FROM yourTable)) vars
ORDER BY ID
)subquery_alias
WHERE timedifference > 65
- se det fungere live i sqlfiddle
At forbedre denne forespørgsel yderligere til at vise de to rækker, hvor tidsforskellen er for stor, burde ikke være et problem :) Når du kommer i alvorlige problemer, er du velkommen til at spørge.