2009/9/2 Marcelo Giovane <[email protected]>:
> Olá pessoal,
> talvez vocês possam me ajudar.
> Estou precisando elaborar uma consulta para retornar o primeiro elemento
> faltante numa sequência.
> Ex:
> Campox
> 200
> 201
> 202
> 205
> 206
>
> No caso, deve retornar 203.


Tente:
SELECT campox FROM
  (SELECT generate_series(menor,maior) FROM
     (SELECT min(campox)::int AS menor, max(campox)::int AS maior FROM
sua_tabela) foo) bar(x)
   LEFT OUTER JOIN sua_tabela
              ON bar.x = sua_tabela.campox
   WHERE sua_tabela.campox IS NULL ORDER BY bar.x LIMIT 1;

Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a