-- Range of missing dates d in table t1 SELECT * FROM ( SELECT trunc(d) AS d, (SELECT min(trunc(d)) FROM t1 t2 WHERE trunc(t2.d) > trunc(t1.d)) next_d FROM t1 ) WHERE d <> next_d - 1;