Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
315
Assunto : SQL Server
Titulo: Numerar Registros

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Uma pergunta comum é como obter no SQL Server uma lista de registros com um número sequencial ao lado.

Para fazermos isso é necessário utilizarmos uma tabela temporária. A tabela da qual deseja-se obter a listagem deve possuir um campo chave ou unique, pois se houverem informações duplicadas no campo utilizado para gerar a contagem o resultado não será perfeito.

Vamos considerar a seguinte tabela :

Create table testandoNumeros (
x varchar(30) )

Veja o código de exemplo :

select *,0 as cnt into #tmpcontagem from testandoNumeros

update #tmpcontagem set cnt=(select count(*) +1 from #tmpcontagem b
where b.x < #tmpcontagem.x)

select * from #tmpcontagem

Ao fazer o select into foi gerado um campo a mais, cnt, que em seguida é atualizado através de um update com uso de sub-query - é neste ponto que está o truque para a realização da contagem.

Feito isso basta fazer o select na tabela temporária.




Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 1/16/2008 11:43:00 AM
nome: Antonio Carlos
email: solutionsbr@yahoo.com
comentário:
Fantástico! Simples e óbvio!

Parabéns!


 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br