Это может быть сделано с более сложным одиночным запросом, но я покажу псевдо код с временной таблицей только для иллюстрации:
Получить все даты, для которых у нас есть записи:
CREATE TEMP TABLE AllUsedDates
SELECT DISTINCT reportdatetime
INTO AllUsedDates;
Теперь добавьте 1 мая, чтобы отслеживать 04-30
INSERT INTO AllUsedData ('2011-05-01')
Если нет «следующего дня», мы нашли пробел:
SELECT A.NEXT_DAY
FROM
(SELECT reportdatetime AS TODAY, DATEADD(reportdatetime, 1) AS NEXT_DAY FROM AllUsed Dates) AS A
WHERE
(A.NEXT_DATE NOT IN (SELECT reportdatetime FROM AllUsedDates)
AND
A.TODAY <> '2011-05-01') --exclude the last day