Cara, eu estava completamente enganado. Mil perdões. Eu consegui: select rownum - pos, todos_ncu.ncu, todos_ncu.cp from (select nm_conta_usuario ncu, cd_perfil cp from usuario_perfil) todos_ncu, (select nm_conta_usuario ncu, min(rownum) - 1 pos, count(cd_perfil) maxncu from usuario_perfil group by nm_conta_usuario) cont where todos_ncu.ncu = cont.ncu order by todos_ncu.ncu, todos_ncu.fil select rownum - pos, filiais.emp, filiais.fil
Roberto Amorim escreveu: > Amigo acho que não tem como zerar o contador a cada troca da perfil. > Tentei fazer uma gambiarra com group by e count, mas não dá para saber a > posição relativa do registro atual em relação ao primeiro registro do > mesmo tipo. Seria necessário que você tivesse como montar no fetch da > linha a informação de quantas linhas já passaram desde a última vez que > o campo mudou. > Você terá que usar stored procedure e tabela temporária mesmo. > um abraço > Roberto Amorim > PS. Mas, pode ser que exista uma instrução no Oracle 9 ou 10g que faça > tal agrupamento e eu desconheça, sou usuário do 8i. > > Jonas Randal Reis escreveu: > >> Boa tarde, >> >> Dado o seguinte select: >> >> select uspe.NM_CONTA_USUARIO >> ,uspe.CD_PERFIL >> from usuario_perfil uspe >> order by 1; >> >> São gerados os seguintes dados (sem a coluna X): >> >> *X* *NM_CONTA_USUARIO* *CD_PERFIL* 1 ABEDIL#SILVA 400 2 ABEDIL#SILVA >> 401 3 ABEDIL#SILVA 402 1 ABEL#SISTI 400 2 ABEL#SISTI 401 1 >> ABILIO#PEREIRA 400 1 ADAIR#ALVES 401 2 ADAIR#ALVES 402 3 ADAIR#ALVES >> 400 1 ADAIR#SILVEIRA 401 2 ADAIR#SILVEIRA 400 3 ADAIR#SILVEIRA 402 1 >> ADALBERTO#MACHA 401 2 ADALBERTO#MACHA 400 3 ADALBERTO#MACHA 402 1 >> ADALCIR#SILVA 100 >> >> Minha dúvida é exatamente como obter a coluna X incrementando esse mesmo >> select. >> Se alguém puder me ajudar agradeço. >> >> Att, >> >> Jonas Reis >> >> >> [As partes desta mensagem que não continham texto foram removidas] >> >> >> >> >> >>> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure >>> » Scripts » Tutoriais acesse: >>> http://www.oraclebr.com.br/codigo/ListaCodigo.php >>> >>> >> -------------------------------------------------------------------------------------------------------------------------- >> >> >>> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >>> responsabilidade de seus remetentes. >>> >>> >> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ >> -------------------------------------------------------------------------------------------------------------------------- >> >> >>> O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >>> http://www.oraclebr.com.br/ >>> >>> >> ------------------------------------------------------------------------------------------------------------------------ >> >> Links do Yahoo! Grupos >> >> >> >> >> >> >> > > > > >> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure >> » Scripts » Tutoriais acesse: >> http://www.oraclebr.com.br/codigo/ListaCodigo.php >> > -------------------------------------------------------------------------------------------------------------------------- > >> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >> responsabilidade de seus remetentes. >> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > -------------------------------------------------------------------------------------------------------------------------- > >> O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >> http://www.oraclebr.com.br/ >> > ------------------------------------------------------------------------------------------------------------------------ > > Links do Yahoo! Grupos > > > > > >