none
Gerar Ordem Automatica em consulta SQL RRS feed

  • Pergunta

  • SELECT *, POSICAO FROM LIGACOES
    ORDER BY NUMEROREQUISICAO
    

    Bom dia a todos,

        preciso de ajuda em um caso, tenho uma consulta em sql que me retorna as ligações que estão pendentes, essas ligações são solicitadas pelos colaboradores da empresa e a atendente possui um sistema que recebe as mesmas

    o caso é, ja possuo uma consulta que me retorna as ligações que devem ser feitas, porem preciso que nessa consulta eu possa colocar um campo chamado POSICAO e que ele seja preenchido com uma ordem de acordo com o retorno da consulta

    tipo faço um

    SELECT *, POSICAO FROM LIGACAO
    ORDER BY NUMEROREQUISICAO
    

    neste caso eu queria que se tivesse 3 registros ele me retornasse preencendo a coluna criada com uma numeracao automatica

    registro 1 coluna posicao = 1

    registro 2 coluna posicao = 2

    registro 2 coluna posicao = 3

    sexta-feira, 18 de fevereiro de 2011 13:19

Respostas

  • Se voce estiver usando o sql 2008 tem uma funcao chamada row_number()

    http://msdn.microsoft.com/en-us/library/ms186734.aspx

    Exemplo:

    SELECT *, ROW_NUMBER() OVER (ORDER BY NUMEROREQUISICAO) AS POSICAO FROM LIGACAO
    ORDER BY NUMEROREQUISICAO  


    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    • Sugerido como Resposta Junior Galvão - MVPMVP terça-feira, 22 de fevereiro de 2011 18:27
    • Marcado como Resposta Eder Costa sexta-feira, 25 de fevereiro de 2011 19:00
    sexta-feira, 18 de fevereiro de 2011 13:25

Todas as Respostas

  • Wagner,

     

    Conhece a propriedade identity? um identity (1,1) por exemplo ira fazer um "insert" automatico em sua tabela de numeros começando por 1 e incrementando de 1 em 1.....


    ---------------------------------------------- Para dicas SQL Server e mais -> www.onlywhatmatters.wordpress.com
    sexta-feira, 18 de fevereiro de 2011 13:21
    Moderador
  • Se voce estiver usando o sql 2008 tem uma funcao chamada row_number()

    http://msdn.microsoft.com/en-us/library/ms186734.aspx

    Exemplo:

    SELECT *, ROW_NUMBER() OVER (ORDER BY NUMEROREQUISICAO) AS POSICAO FROM LIGACAO
    ORDER BY NUMEROREQUISICAO  


    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    • Sugerido como Resposta Junior Galvão - MVPMVP terça-feira, 22 de fevereiro de 2011 18:27
    • Marcado como Resposta Eder Costa sexta-feira, 25 de fevereiro de 2011 19:00
    sexta-feira, 18 de fevereiro de 2011 13:25
  • Olá Wagner!

    Houve algum progresso nesta questão? Os exemplos citados atendem a tua necessidade?

    att;


    Eder Costa - LATAM Forum Support Engineer
    Microsoft Corporation
    segunda-feira, 21 de fevereiro de 2011 18:09