Numerar registros

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
Avatar do usuário
MuLtAnI
Moderador
Moderador
Mensagens: 90
Registrado em: Ter, 01 Jun 2004 9:21 am
Localização: Videira - SC
Contato:

olá pessoal, gostaria de saber se alguém conhece alguma maneira de numerar os registros de uma seleção sem ser pelo rownum

select rownum, cod_pro, desc_pro from cadpro order by cod_pro

desse jeito o meu rowid vai vim desordenado, devido o order by der pelo cod_pro e se eu ordenar pelo rownum também o cod_pro vai vir desordenado

preciso que eu ordene os registros pelo cod_pro e atribua valores ordenados aos registros..

desde já agradeço!!!!!


abraços
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Acho que você vai ter que usar um sub-select...
Algo como:

Selecionar tudo

select rownum, a.*
from 
  (select b.cod_pro, b.desc_pro 
   from cadpro b
   order by b.cod_pro) a
Será isso?
Avatar do usuário
MuLtAnI
Moderador
Moderador
Mensagens: 90
Registrado em: Ter, 01 Jun 2004 9:21 am
Localização: Videira - SC
Contato:

eu fiz um selfjoin

Selecionar tudo

select rownum, b.cdpro
from cadpro a, cadpro b
where a.cdpro = b.cdpro
deu certo aqui...na verdade eu fiz isso logo depois que postei no fórum, pois num era nem pra mim...pra uma colega...

mas valeu pela força!!

[]'s
Avatar do usuário
leobbg
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Sex, 29 Out 2004 10:25 am
Localização: PORTO ALEGRE - RS
Leo BBG Consultor Oracle

Selecionar tudo

select b.cod_pro, b.desc_pro
from  cadpro b
order by dense_rank() over( order by b.desc_pro )
falou! :twisted:
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 11 visitantes