none
Problemas com Sum RRS feed

  • Pergunta

  • Olá pessoal,

    Spu novo em SQL Server e to postando pela primeira vez aqui. Eu to com um problema em fazer a soma de valores acumulados.

    É assim:

    Eu tenho uma tabela, nela tem as colunas "especificações, conta_corrente, data_lancamento, valor". Tenho um sistema que lança o valor como negativo ou positivo dependendo da opração. Só que o problema é que eu não consigo fazer somar correto.

    Vejam o meu código:

    select

     

    especificaces, conta_corrente, data_lancamento, valor

    sum

     

    (a.valor) as Saldo

    from

     

    lancamentos as a

    group

     

    by especificaces, conta_corrente, data_lancamento, valor

    order

     

    by data

    Este script me retorna as colunas bem verdade mas não calcula. Eu queria fazer o cálculo detalhado por dia e lançamento. Assim, a cada lançamento ele calcula, mas registra no select. Não sei como fazer.

    Abraços pessoal, to no aguardo da resposta.

    sábado, 9 de outubro de 2010 22:34

Respostas

  • Marcelo,

    Não seria o caso de realizar um agrupamento de valores por data, mas ao invês de agrupar por dias, agrupar por mês?

    Fazer um group by através do mês!!!!


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    sexta-feira, 22 de outubro de 2010 11:35

Todas as Respostas

  • Pessoal, consegui. O código real é este:

    select

     

    codigo, especificacoes, conta_corrente,data,valor,

    isnull

     

    ((select sum(valor) as Saldo from mov_data as a

    where

     

    b.conta_corrente >=a.conta_corrente

    and

     

    b.codigo >= a.codigo

    and

     

    b.data = a.data),0)

    from

     

    mov_data as b

    order

     

    by data

     

     

    O problema é o seguinte: Ele me calcula pelo acumulado de cada data. Eu preciso que ele calcule o acumulado de cada data e junto com as outras datas. Por exemplo:

    Ele conta pra mim do dia 01/10/2010  200 so que do dia 02/10/2010 ele não junta. e fica na próxima data apenas o valor do dia e saldo do dia 01/10/2010 fica para tras sem qualquer vínculo. Como eu faço?

     

    Abraços..

    sábado, 9 de outubro de 2010 23:36
  • Marcelo,

    Não seria o caso de realizar um agrupamento de valores por data, mas ao invês de agrupar por dias, agrupar por mês?

    Fazer um group by através do mês!!!!


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    sexta-feira, 22 de outubro de 2010 11:35