1
SELECT
yt1.[timestamp] AS StartTime,
MIN(yt2.[timestamp]) AS EndTime,
DATEDIFF(s, yt1.[timestamp], MIN(yt2.[timestamp])) AS DifferenceInSeconds
FROM
yourTable yt1
LEFT JOIN yt2 ON yt1.[timestamp] < yt2.[timestamp]
WHERE
yt1.Col1 IS NULL
OR yt1.Col2 IS NULL
...
OR yt1.Col20 IS NULL
OR yt2.Col1 IS NULL
...
OR yt2.Col20 IS NULL 
GROUP BY yt1.[timestamp]

同じクエリで、現在の出力は次のようになります

18-05-2012 20:07
18-05-2012 20:17
18-05-2012 20:27
18-05-2012 20:37 

などには10分のギャップがあり、連続したギャップは開始時間として18-05-2012 20:07、終了時間として18-05-2012 20:37、分単位のギャップが表示されます40。

4

0 に答える 0