Usuário com melhor resposta
Soma em um campo float

Pergunta
-
Preciso de uma ajuda, criei uma table no sql serve e nessa tabela tem um campo float, estou tentando fazer um SUM nesse campo ma não estou conseguindo, não sei o que esta havendo que não faz a soma, a tabela sozinha faz a soma, mas quando faço inner join com outras tabelas não faz a soma no campo.
segue a minha query
SELECT
SUM(PRO.Qtda) AS QTDA
FROM tbl_SolicitacaoAmostra AS SA
INNER JOIN tbl_Produto AS PRO WITH (NOLOCK) ON PRO.Id_Solicitacao = SA.Id_Solicitacao
INNER JOIN tbl_Cliente AS CLI WITH (NOLOCK) ON CLI.Id_Cliente = SA.Id_Cliente
WHERE sa.Cod_Solicitacao = '000065' AND PRO.Deletado IS NULL
GROUP BY PRO.Cod_Produto, PRO.NomeProduto, PRO.Lote, PRO.Fabricante, PRO.Qtda, PRO.Id_Produto, PRO.Id_Solicitacao
ORDER BY PRO.Cod_Produtoresultado não faz o sum,
0,1
0,05
0,05
0,1
0,05
JUNIOR GUERREIRO T.I
Respostas
-
Tente remover a coluna PRO.Cod_Produto do Group By e do Order By para ver se é obtido o resultado esperado.
Assinatura: http://www.imoveisemexposicao.com.br
- Marcado como Resposta Junior Guerreiro quinta-feira, 28 de setembro de 2017 13:03
-
Bom dia,
Você precisa de quais colunas no resultado?
Experimente deixar no Group By somente as colunas que você vai precisar no resultado e que não estão dentro de funções de agregação (ex: Sum), como é o caso da coluna PRO.Qtda.
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
- Marcado como Resposta Junior Guerreiro quinta-feira, 28 de setembro de 2017 13:03
Todas as Respostas
-
Bom dia,
Você precisa de quais colunas no resultado?
Experimente deixar no Group By somente as colunas que você vai precisar no resultado e que não estão dentro de funções de agregação (ex: Sum), como é o caso da coluna PRO.Qtda.
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
- Marcado como Resposta Junior Guerreiro quinta-feira, 28 de setembro de 2017 13:03
-
Bom dia.
Tente assim:
SELECT SUM(PRO.Qtda) AS QTDA FROM tbl_SolicitacaoAmostra AS SA INNER JOIN tbl_Produto AS PRO WITH (NOLOCK) ON PRO.Id_Solicitacao = SA.Id_Solicitacao INNER JOIN tbl_Cliente AS CLI WITH (NOLOCK) ON CLI.Id_Cliente = SA.Id_Cliente WHERE sa.Cod_Solicitacao = '000065' AND PRO.Deletado IS NULL ORDER BY PRO.Cod_Produto
Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)
-
obrigado pela atenção, mas ainda não deu certo.
SELECT
PRO.Fabricante,
SUM(PRO.Qtda) AS QTDA
FROM tbl_SolicitacaoAmostra AS SA
INNER JOIN tbl_Produto AS PRO WITH (NOLOCK) ON PRO.Id_Solicitacao = SA.Id_Solicitacao
INNER JOIN tbl_Cliente AS CLI WITH (NOLOCK) ON CLI.Id_Cliente = SA.Id_Cliente
WHERE sa.Cod_Solicitacao IN ('000065', '000070') AND PRO.Deletado IS NULL
GROUP BY PRO.Cod_Produto, PRO.Fabricante
ORDER BY PRO.Cod_Produtotudo que for DAITO KASEI tem que somar e mostrar em uma unica linha e não esta acontecendo...
JUNIOR GUERREIRO T.I
- Editado Junior Guerreiro quinta-feira, 28 de setembro de 2017 12:57
-
Tente remover a coluna PRO.Cod_Produto do Group By e do Order By para ver se é obtido o resultado esperado.
Assinatura: http://www.imoveisemexposicao.com.br
- Marcado como Resposta Junior Guerreiro quinta-feira, 28 de setembro de 2017 13:03
-