SELECT a.bar+1 AS 'Missing From', MIN(b.bar) - 1 AS 'To' FROM foo AS a, foo AS b WHERE a.bar < b.bar GROUP BY a.bar HAVING 'Missing From' < MIN(b.bar) - 1 ORDER BY 1; +--------------+------+ | Missing From | To | +--------------+------+ | 2 | 1 | | 3 | 3 | | 5 | 14 | +--------------+------+