आप तालिका में स्वयं शामिल हो सकते हैं, आपके मामले में कुछ ऐसा काम करता है:
SELECT
*
FROM
yourTable a
INNER JOIN yourTable b ON a.ID = b.ID + 1
WHERE TIMESTAMPDIFF(second, a.timestamp, b.timestamp) > 60
लेकिन यह तब बदसूरत हो सकता है जब आपके आईडी कॉलम में गैप हो। और विशेष रूप से यह बदसूरत हो सकता है (प्रदर्शन के मामले में (जब आपके पास टेबल पर अच्छी अनुक्रमणिका नहीं होती है)) जब आपके पास *बहुत सारे होते हैं डेटा का।
इसलिए, मैं चर का उपयोग करके कुछ और उन्नत प्रश्नों का उपयोग करने का सुझाव दूंगा। तालिका में शामिल होने की आवश्यकता के बिना यह आमतौर पर बहुत तेज चलता है:
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
- इसे sqlfiddle में लाइव काम करते हुए देखें
दो पंक्तियों को प्रदर्शित करने के लिए इस क्वेरी को और बेहतर बनाने के लिए जहां समय अंतर बहुत बड़ा है, कोई समस्या नहीं होनी चाहिए :) जब आप गंभीर संकट में हों, तो बेझिझक पूछें।