helvis2009 Postado Outubro 15, 2011 Denunciar Share Postado Outubro 15, 2011 Boa noite... estou com o seguinte problema:Tenho que somar o resultado dos registros abaixo, mais no select aqui ele ta listando os registros e não somando e agrupando.. quem sacar a parada ai me ajude:-------------------------------------------------------------------------------------------------------------------------SELECT DISTINCTEMPRESA.NOME_EMPRESA,CASE WHEN MOVI.DATA_COMPRA_O BETWEEN '01/08/2011' AND '31/08/2011' THEN SUM(MOVI.VALOR_COMPRA)END AS CREDITO_MATRIZ,CASE WHEN MOVI.DATA_COMPRA_O BETWEEN '01/09/2011' AND '30/09/2011' THEN SUM(MOVI.VALOR_COMPRA)END AS CREDITO_FILIAL,FATURA.VALOR_FATURA AS TOTAL_FATURA FROM MOVILEFT JOIN EMPRESA ON EMPRESA.COD_EMP = MOVI.COD_EMPLEFT JOIN FATURA ON FATURA.TITULO = MOVI.TITULOWHERE FATURA.TITULO = '201198874' AND FATURA.DATA_EMISSAO >='01/09/2011'GROUP BY FATURA.VALOR_FATURA, EMPRESA.NOME_EMPRESA, MOVI.DATA_COMPRA-------------------------------------------------------------------------------------------------------------------------o resultado que ta aparecendo é esse:EMPRESA MATRIZ FILIAL TOTAL_FATURAEMPRESA DE EMBALAGENS LTDA NULL 1.80 1227.65EMPRESA DE EMBALAGENS LTDA NULL 9.90 1227.65EMPRESA DE EMBALAGENS LTDA NULL 34.34 1227.65EMPRESA DE EMBALAGENS LTDA NULL 70.24 1227.65EMPRESA DE EMBALAGENS LTDA NULL 102.15 1227.65EMPRESA DE EMBALAGENS LTDA NULL 129.65 1227.65EMPRESA DE EMBALAGENS LTDA 9.56 NULL 1227.65EMPRESA DE EMBALAGENS LTDA 54.11 NULL 1227.65EMPRESA DE EMBALAGENS LTDA 54.70 NULL 1227.65EMPRESA DE EMBALAGENS LTDA 87.52 NULL 1227.65EMPRESA DE EMBALAGENS LTDA 107.21 NULL 1227.65EMPRESA DE EMBALAGENS LTDA 275.42 NULL 1227.65EMPRESA DE EMBALAGENS LTDA 291.05 NULL 1227.65Mais na verdade, era para o resultado ser assim:---------------------------------------------------------------EMPRESA MATRIZ FILIAL TOTAL_FATURAEMPRESA DE EMBALAGENS LTDA 879.57 348.08 1227.65---------------------------------------------------------------não sei porque não esta agrupando, quem se habilita??Obrigado!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Outubro 17, 2011 Denunciar Share Postado Outubro 17, 2011 Bom dia Helvis, O problema pode estar no Group By, campo MOVI.DATA_COMPRA. Se a data da compra tiver hora, minutos, segundos, o sql não irá agrupar. você também está utilizando o campo no between... dê uma olhada nas datas. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 helvis2009 Postado Outubro 19, 2011 Autor Denunciar Share Postado Outubro 19, 2011 Bom dia Helvis, O problema pode estar no Group By, campo MOVI.DATA_COMPRA. Se a data da compra tiver hora, minutos, segundos, o sql não irá agrupar. você também está utilizando o campo no between... dê uma olhada nas datas.Bom dia Fulvio... consegui resolver aqui.. o problema que eu estava colocando assim:----------------------------------------------------------------------------------------------------------------------------------------------------------------------CASE WHEN MOVI.DATA_COMPRA_O BETWEEN '01/08/2011' AND '31/08/2011' THEN SUM(MOVI.VALOR_COMPRA)END AS CREDITO_MATRIZ,CASE WHEN MOVI.DATA_COMPRA_O BETWEEN '01/09/2011' AND '30/09/2011' THEN SUM(MOVI.VALOR_COMPRA)END AS CREDITO_FILIAL,----------------------------------------------------------------------------------------------------------------------------------------------------------------------mais na verdade o comando "SUM" tinha que ficar fora do "CASE"... então ficou assim:----------------------------------------------------------------------------------------------------------------------------------------------------------------------SUM(CASE WHEN MOVCO.DT_COMPRA_O BETWEEN '01/08/2011' AND '31/08/2011' THEN (MOVI.VALOR_COMPRA)END) AS CREDITO_MATRIZ,SUM(CASE WHEN MOVCO.DT_COMPRA_O BETWEEN '01/09/2011' AND '30/09/2011' THEN (MOVI.VALOR_COMPRA)END) AS CREDITO_FILIAL----------------------------------------------------------------------------------------------------------------------------------------------------------------------De qualquer forma, muito obrigado!Att,HELVIS Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
helvis2009
Boa noite... estou com o seguinte problema:
Tenho que somar o resultado dos registros abaixo, mais no select aqui ele ta listando os registros e não somando e agrupando.. quem sacar a parada ai me ajude:
-------------------------------------------------------------------------------------------------------------------------
SELECT DISTINCT
EMPRESA.NOME_EMPRESA,
CASE WHEN MOVI.DATA_COMPRA_O BETWEEN '01/08/2011' AND '31/08/2011' THEN SUM(MOVI.VALOR_COMPRA)END AS CREDITO_MATRIZ,
CASE WHEN MOVI.DATA_COMPRA_O BETWEEN '01/09/2011' AND '30/09/2011' THEN SUM(MOVI.VALOR_COMPRA)END AS CREDITO_FILIAL,
FATURA.VALOR_FATURA AS TOTAL_FATURA
FROM MOVI
LEFT JOIN EMPRESA ON EMPRESA.COD_EMP = MOVI.COD_EMP
LEFT JOIN FATURA ON FATURA.TITULO = MOVI.TITULO
WHERE FATURA.TITULO = '201198874' AND FATURA.DATA_EMISSAO >='01/09/2011'
GROUP BY FATURA.VALOR_FATURA, EMPRESA.NOME_EMPRESA, MOVI.DATA_COMPRA
-------------------------------------------------------------------------------------------------------------------------
o resultado que ta aparecendo é esse:
EMPRESA MATRIZ FILIAL TOTAL_FATURA
EMPRESA DE EMBALAGENS LTDA NULL 1.80 1227.65
EMPRESA DE EMBALAGENS LTDA NULL 9.90 1227.65
EMPRESA DE EMBALAGENS LTDA NULL 34.34 1227.65
EMPRESA DE EMBALAGENS LTDA NULL 70.24 1227.65
EMPRESA DE EMBALAGENS LTDA NULL 102.15 1227.65
EMPRESA DE EMBALAGENS LTDA NULL 129.65 1227.65
EMPRESA DE EMBALAGENS LTDA 9.56 NULL 1227.65
EMPRESA DE EMBALAGENS LTDA 54.11 NULL 1227.65
EMPRESA DE EMBALAGENS LTDA 54.70 NULL 1227.65
EMPRESA DE EMBALAGENS LTDA 87.52 NULL 1227.65
EMPRESA DE EMBALAGENS LTDA 107.21 NULL 1227.65
EMPRESA DE EMBALAGENS LTDA 275.42 NULL 1227.65
EMPRESA DE EMBALAGENS LTDA 291.05 NULL 1227.65
Mais na verdade, era para o resultado ser assim:
---------------------------------------------------------------
EMPRESA MATRIZ FILIAL TOTAL_FATURA
EMPRESA DE EMBALAGENS LTDA 879.57 348.08 1227.65
---------------------------------------------------------------
não sei porque não esta agrupando, quem se habilita??
Obrigado!!
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.