Отсортируй запрос по возрастанию, запусти счётчик и перебирай строки ответа от БД.
Как только номер счётчика окажется меньше, чем поле ID - это и есть первое свободное
/Если бы архитекторы строили здания так, как программисты пишут программы,
то первый залетевший дятел разрушил бы цивилизацию./