Que versão voce está usando? Na 10g funciona legal (inclusive eu coloquei o mesmo exemplo em
http://mportes.blogspot.com/2006/01/como-encontrar-gaps-em-uma-sequncia.html Por isso que eu acho importante/essencial informar qual a *versão* s dúvida está. Eu tenho trabalho direto na 10g e meus exemplos são em 10g, salvo quando na dúvida esteja especificamente a versão. SQL> select falta 2 from ( 3 with seq as ( 4 select level l 5 from dual connect by level <= ( select max(x) from t ) 6 ) 7 select l, x, decode(x, null, l ) falta 8 from seq left outer join t on ( l = x ) 9 order by 1 10 ) 11 where falta is not null 12 / FALTA ------------- 2 7 8 9 11 12 6 rows selected. SQL> select * from v$version; BANNER ------------------------------------------------------------------------------ Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod PL/SQL Release 10.1.0.2.0 - Production CORE 10.1.0.2.0 Production TNS for Linux: Version 10.1.0.2.0 - Production NLSRTL Version 10.1.0.2.0 - Production Não tenho instalado o 9i aqui, mas com a ajuda do amigo Gari Einsfeldt ele testou e deu retorno legal! Testa agora. select l, x, decode(x, null, l ) falta from ( select l from ( select rownum l from all_objects where rownum <= ( select max(x) from t ) ) ) left outer join t on ( l = x ) order by 1 / abracos, -- Marcio Portes. http://mportes.blogspot.com --- Em oracle_br@yahoogrupos.com.br, Marcelo Cauduro <[EMAIL PROTECTED]> escreveu > > Marcio, essa query nao retorna > > ORA-01473: cannot have subqueries in CONNECT BY clause ? > > > > On 1/17/06, Marcio Portes <[EMAIL PROTECTED]> wrote: > > > > select * > > from ( > > with seq as ( > > select level l > > from dual connect by level <= ( select max(x) from t ) > > ) > > select l, x, decode(x, null, l ) falta > > from seq left outer join t on ( l = x ) > > order by 1 > > ) > > where falta is not null > > / > > > > Seria um método. Segue exemplo: > > Balise a sequencia com uma view completa e faça um outer join com sua > > tabela. Com uma comparação simples, voce > > encontrará os gaps. > > > > > > SQL> select * from t; > > > > X > > ------------- > > 1 > > 3 > > 4 > > 5 > > 6 > > 10 > > 13 > > > > 7 rows selected. > > > > SQL> with seq as ( > > 2 select level l > > 3 from dual connect by level <= ( select max(x) from t ) > > 4 ) > > 5 select l, x, decode(x, null, l ) falta > > 6 from seq left outer join t on ( l = x ) > > 7 order by 1 > > 8 / > > > > L X FALTA > > ------------- ------------- ------------- > > 1 1 > > 2 2 > > 3 3 > > 4 4 > > 5 5 > > 6 6 > > 7 7 > > 8 8 > > 9 9 > > 10 10 > > 11 11 > > 12 12 > > 13 13 > > > > 13 rows selected. > > > > > > criscadba wrote: > > > Boa tarde ! > > > > > > Os desenvolvedores usam uma sequence para preencher a pk de uma > > > tabela, só que alguém andou com a sequence em alguns momentos e a pk > > > da tabela, que tem que ser sequencial, ficou com furos, exemplo : > > > > > > protocolo_inscricao > > > 1 > > > 3 > > > 4 > > > 5 > > > 6 > > > 10 > > > 13 > > > > > > Há alguma função que me diga quais os números estão faltando porque > > > foram pulados pelo avanço indevido da sequence ? > > > > -- > > Marcio Portes > > http://mportes.blogspot.com > > > > > > -------------------------------------------------------------------------------------------------------------------------- > > Atenção! As mensagens deste grupo são de acesso público e de inteira > > responsabilidade de seus remetentes. > > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > > > > --------------------------------------------------------------------------------------------------------------------------_____________________________________________________________________ > > Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423 > > > > > > *Yahoo! Grupos, um serviço oferecido por:* PUBLICIDADE > > <http://br.rd.yahoo.com/SIG=12fib5nru/M=387526.7663462.8697482.1588051/D=brclubs/S=2137114689:HM/Y=BR/EXP=1137553830/A=3242383/R=2/id=noscript/SIG=16fepr8g1/*http://landingstrip.dell.com/landingstrip/ls.asp?CID=10164&LID=293758&DGC=BA&DGStor=DHS&DGSite=Yahoo&Conum=BR&DURL=http://www1.la.dell.com/content/products/category.aspx/notebooks?c%3Dbr%26l%3Dpt%26s%3Ddhs> > > ------------------------------ > > *Links do Yahoo! Grupos* > > > > - Para visitar o site do seu grupo na web, acesse: > > http://br.groups.yahoo.com/group/oracle_br/ > > > > - Para sair deste grupo, envie um e-mail para: > > [EMAIL PROTECTED]<[EMAIL PROTECTED]> > > > > - O uso que você faz do Yahoo! Grupos está sujeito aos Termos do > > Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>. > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > -------------------------------------------------------------------------------------------------------------------------- Atenção! As mensagens deste grupo são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ --------------------------------------------------------------------------------------------------------------------------_____________________________________________________________________ Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423 Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html