SELECT a.id+1 AS start, MIN(b.id) - 1 AS end
FROM testtable AS a, testtable AS b
WHERE a.id < b.id
GROUP BY a.id
HAVING start < MIN(b.id)
Mam nadzieję, że ten link również pomożehttp://www.codediesel.com/mysql /sequence-gaps-in-mysql/