si se puede pero con un simple query no lo vas a lograr deberias de sacar cuales son los huecos en tu tabla digamos metes en una tabla los valores del 1-5000 y luego comparas tus datos contra los valores que tengas en tu tabla de ids :), donde tengas huecos quiere decir que hay un faltante......
algo asi:
Código SQL:
Ver originalCREATE TABLE #temp
(
id INT
)
INSERT INTO #temp VALUES (1)
INSERT INTO #temp VALUES (2)
INSERT INTO #temp VALUES (3)
INSERT INTO #temp VALUES (4)
INSERT INTO #temp VALUES (6)
INSERT INTO #temp VALUES (7)
INSERT INTO #temp VALUES (8)
INSERT INTO #temp VALUES (9)
INSERT INTO #temp VALUES (11)
INSERT INTO #temp VALUES (15)
DECLARE @total INT
DECLARE @x INT
DECLARE @id INT
SELECT @total=MAX(id) FROM #temp
SET @x=1
while @x<=@total
BEGIN
SET @id=0
SELECT @id=id FROM #temp WHERE id=@x
IF @id=0
BEGIN
print 'Numero faltante ' + CONVERT(VARCHAR(20),@x)
SET @x=@total
END
ELSE
BEGIN
SET @x=@x+1
END
END
esto te regresara cual es el id faltante en la serie :)
saludos!