Encontrar huecos en secuencia.

14/03/2008 - 13:35 por Tomas | Informe spam
Hola a todos.

Tengo una tabla, con una clave principal única.
Se han creado códigos como 1,2,3,5,9 ... etc.
Necesito rellenar los huecos y tengo que hacer una rutina que me encuentre
el primer hueco disponible para poder utilizar el código que le corresponda
por orden.
Para el ejemplo anterior, debería encontrar el 4. Cuando esté creado el 4,
en la siguiente búsqueda debería detectar el 6 y así sucesivamente.

¿Alquien sabe cómo se podría plantear esta búsqueda?

Gracias por anticipado.

Saludos.
Tomás.
 

Leer las respuestas

#1 Rolando
14/03/2008 - 14:23 | Informe spam
Si es para que se llenen solo una vez, lo que deberias es guardar el numero
del primer hueco e irlo actualizando buscando el proximo con un if
exists(select..) dentro de un while.

Pero si es que que al azar se vuelven a crear nuevos huecos eso tendrias que
hacerlo contando desde el 1 pero eso debe ser extremadamente ineficiente.
No seria malo que revisaras ese diseño a ver si evitas eso de todos modos,
quiza teniendo otro campo para esa clave.


"Tomas" escribió en el mensaje
news:%23hopm$
Hola a todos.

Tengo una tabla, con una clave principal única.
Se han creado códigos como 1,2,3,5,9 ... etc.
Necesito rellenar los huecos y tengo que hacer una rutina que me encuentre
el primer hueco disponible para poder utilizar el código que le
corresponda por orden.
Para el ejemplo anterior, debería encontrar el 4. Cuando esté creado el 4,
en la siguiente búsqueda debería detectar el 6 y así sucesivamente.

¿Alquien sabe cómo se podría plantear esta búsqueda?

Gracias por anticipado.

Saludos.
Tomás.

Preguntas similares