¿Cómo puedo?

14/03/2005 - 12:12 por Joan Q. | Informe spam
Hola a todos/as

Tengo un select de una relación de trabajadores identificados con un número.
¿Cómo puedo saber el número correlativo libre al número más pequeño?
Es decir que si tengo
1, 2, 3, 5, 6, 10 : la respuesta es 4 que es correlativo a 3
Gracias
Joan Q

Preguntas similare

Leer las respuestas

#6 jaime
14/03/2005 - 17:25 | Informe spam
select min (t.cod_trabajador + 1)
from trabajadores t
where (t.cod_trabajador + 1) not in (SELECT t.cod_trabajador from
trabajadores t where t.codigoempresa = '0509')

"Joan Q." escribió en el mensaje
news:O%
Bueno ya está. Da el resultado correcto con:

select min (t.cod_trabajador + 1)
from trabajadores t
where (t.cod_trabajador + 1) not in (SELECT t.cod_trabajador from
trabajadores t where t.codigoempresa = 0509)

Muchas gracias por todo
Joan Q

"Joan Q." escribió en el mensaje
news:OR%
> Carlos,
>
> He comprobado que la sentencia da un resultado correcto si omito el


"and
> t.codigoempresa = 0509"
> Me da 244 que es el primer codigo de trabajador libre de todos las
empresas
> que son una 250. A partir del momento que añado al where la pertenencia


al
> codigoempresa me da NULL
> Gracias
> Joan Q
>
> "Joan Q." escribió en el mensaje
> news:%
> >
> > "Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> escribió en el


mensaje
> > news:
> > > ¿Puedes postear el script de tu tabla y unos datos de ejemplo?
> > >
> > >
> > > Un saludo
> > >
> > > -
> > > "Sólo sé que no sé nada. " (Sócrates)
> > >
> > > "Joan Q." escribió en el mensaje
> > > news:
> > > > Gracias por tu respuesta Carlos.
> > > >
> > > > Si pongo
> > > > select min (t.cod_trabajador + 1 )
> > > > from trabajadores t
> > > > where not ((t.cod_trabajador + 1 ) in (SELECT t.cod_trabajador


from
> > > > trabajadores t))
> > > > and t.codigoempresa = 0509
> > > >
> > > > Me sale
> > > > NULL
> > > >
> > > > (1 filas afectadas)
> > > > Cuando sí existen vacíos
> > > >
> > > >
> > > > "Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> escribió en el
> mensaje
> > > > news:
> > > > > Prueba con (lo tengo en un script, pero no sé de quién es):
> > > > >
> > > > > SELECT MIN(campo + 1)
> > > > > FROM tuTabla
> > > > > WHERE NOT (campo+ 1) IN (SELECT campo FROM tuTabla)
> > > > >
> > > > >
> > > > > Un saludo
> > > > >
> > > > > -
> > > > > "Sólo sé que no sé nada. " (Sócrates)
> > > > >
> > > > > "Joan Q." escribió en el mensaje
> > > > > news:
> > > > > > Hola a todos/as
> > > > > >
> > > > > > Tengo un select de una relación de trabajadores identificados
con
> un
> > > > > número.
> > > > > > ¿Cómo puedo saber el número correlativo libre al número más
> pequeño?
> > > > > > Es decir que si tengo
> > > > > > 1, 2, 3, 5, 6, 10 : la respuesta es 4 que es correlativo a 3
> > > > > > Gracias
> > > > > > Joan Q
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida