none
Problema em SQL para agrupar dados com condições parecidas RRS feed

  • Pergunta

  • Boa tarde

    Tenho o seguinte select para executar, mas não consigo o retorno desejado.

    SELECT 
    GF.Cd_lancamento AS 'Lanc', 
    GF.Nf AS 'NF', 
    GE.Nome_completo as 'Empresa', 
    SUM((GF.Valor*RATEIO.Percentual_rate)/100) AS 'Valor', 
    LEFT(RATEIO.Cd_conta_gerenc, 11) AS 'Conta', 
    CCPCC.Pcc_nome_conta AS 'Centro de Custo' 
    FROM 
    CCPCC, GF, PORT, GE, RATEIO
    WHERE 
    left(RATEIO.Cd_conta_gerenc,11)=CCPCC.Pcc_classific_c 
    AND GF.Cd_lancamento = RATEIO.Cd_lancamento 
    AND PORT.Cd_portador = GF.Cd_portador 
    AND GF.Cd_empresa = GE.Cd_empresa
    AND ((GF.Cd_c_partida<GF.Cd_lancamento) 
    AND (GF.Situacao='L') 
    AND (GF.Cd_portador LIKE 'C%') 
    AND (GF.Data Between '2015-12-01' And '2015-12-31'))
    AND GF.Nf=7547333
    GROUP BY
    GF.Cd_lancamento, 
    GF.Nf, LEFT(RATEIO.Cd_conta_gerenc, 11), GE.Nome_completo, 
    CCPCC.Pcc_nome_conta , 
    (GF.Valor*RATEIO.Percentual_rate)
    ORDER BY 
    GF.Cd_lancamento

    O retorno é:

    Lanc NF Empresa Valor Conta Centro de Custo
    34697 7547333 UNIMED            -2752,61 8.01.01.001 DESPESAS - FUNCIONARIOS - CURITIBA/PR   
    34697 7547333 UNIMED            -2027,97 8.01.01.001 DESPESAS - FUNCIONARIOS - CURITIBA/PR   
    34697 7547333 UNIMED            -220,46 8.01.01.002 DESPESAS - FUNCIONARIOS-CORREIA PINTO/SC
    34697 7547333 UNIMED            -171,41 8.01.01.002 DESPESAS - FUNCIONARIOS-CORREIA PINTO/SC

    MAS O QUE EU GOSTARIA ERA TOTALIZADO POR CONTA:

    Lanc NF Empresa Valor Conta Centro de Custo
    34697 7547333 UNIMED            -4780,58 8.01.01.001 DESPESAS - FUNCIONARIOS - CURITIBA/PR   
    34697 7547333 UNIMED            -391,87 8.01.01.002 DESPESAS - FUNCIONARIOS-CORREIA PINTO/SC

    Alguém pode me ajudar, por favor. Já estou há 3 dias em cima disso e não consigo resolver.

    Obrigado.


    terça-feira, 12 de janeiro de 2016 19:48

Respostas

  • Boa tarde,

    Experimente fazer um teste com o Group By da seguinte forma:

    GROUP BY
        GF.Cd_lancamento, 
        GF.Nf, 
        LEFT(RATEIO.Cd_conta_gerenc, 11), 
        GE.Nome_completo, 
        CCPCC.Pcc_nome_conta

    Espero que ajude


    Assinatura: http://www.imoveisemexposicao.com.br

    • Sugerido como Resposta FLauffer terça-feira, 12 de janeiro de 2016 20:30
    • Marcado como Resposta Marcos SJ quarta-feira, 13 de janeiro de 2016 10:58
    terça-feira, 12 de janeiro de 2016 20:00

Todas as Respostas