Есть у меня диапазон id, в котором надо создать 1-10 записей.
2 0
10 000 00
0
-
2 0
10 999 99
0
Я хочу создать 5 записей, находится диапазон:
2 010 123 450 - 2 010 123 459 и создаются id:
2 010 123 450
2 010 123 451
2 010 123 452
2 010 123 453
2 010 123 454
Мне нужно как можно быстрее найти пустой диапазон, если его нет вывести ошибку.
SELECT TOP 20 (users.id+1) as empty_id
FROM sw.dbo.users
WHERE (
SELECT 1 FROM users as st WHERE st.id = (users.id + 1)
) IS NULL
ORDER BY users.id;
Нашел такой код, который находит диапазон вообще пустых чисел. Но может есть более оптимизированный вариант.