Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde amigos,
Alguem pode me dar uma ajudinha aqui.
Eu tenho uma tabela assim:
cod cod2 cod3
1 2 98
1 2 32
1 2 44
1 2 64
1 3 23
1 3 42
1 3 11
1 3 95
E gostaria de gerar uma query, utilizando select, incluindo uma coluna nova de sequencia como o exemplo abiaxo:
cod cod2 cod3 Seq
1 2 98 1
1 2 32 2
1 2 44 3
1 2 64 4
1 3 23 1
1 3 42 2
1 3 11 3
1 3 95 4
Alguem tem alguma ideia de como eu posso fazer isso?
Ps. estou utilizando um BD Oracle 10g.
Obrigado.
Não deu não.
A formatação do forum complicou tambem minha tabela de explicação.
Você percebeu que o numero sequencial leva em consideração os outros codigos?
Tipo, ele vai mantendo a contagem para o cod = 1 e cod2 = 2, quando chega no cod = 1 e cod2 = 2 ele inicializa o gerador denovo...
Acho que agora ficou melhor explicado.
Eu tenho uma tabela assim:
cod cod2 cod3
1 2 98
1 2 32
1 2 44
1 2 64
1 3 23
1 3 42
1 3 11
1 3 95
E gostaria de gerar uma query, utilizando select, incluindo uma coluna nova de sequencia como o exemplo abiaxo:
cod cod2 cod3 Seq
1 2 98 1
1 2 32 2
1 2 44 3
1 2 64 4
1 3 23 1
1 3 42 2
1 3 11 3
1 3 95 4
Acho que alguma das Analict Functions
http://download.oracle.com/docs/cd/B19306_...s001.htm#i81407
RANK,DENSE RANK etc podem fazer isto.
Nunca usei isto mas sei que tem bastantes recursos.
Valeu Motta.
Eu utilizei DENSE_RANK e funcionou.
Segue abaixo um pequeno exemplo pra outros que tiverem futuras duvidas semelhantes a mim, e um link com algumas instruções de como utilizar ele.
http://www.devmedia.com.br/articles/viewcomp.asp?comp=4151
SELECT to_char( dtvenc, 'MM-YYYY') dtvenc, cdcontr, vlprest,
DENSE_RANK() OVER
(PARTITION BY to_char(dtvenc,'YYYYMM')
ORDER BY vlprest ) dense_rank
FROM vRECEBER
WHERE dtvenc > sysdate;
Abração.
select cod, cod2, cod3, '' Seq
from tabela
ou
select cod, cod2, cod3, rownum Seq
from tabela
a 1ª cria uma coluna virtual nula , na 2ª utiliza uma pseudocoluna rownum qye gera uma sequencia das colunas da sql.