É o seguinte, estou iniciando na área de SQL (inclusive já peço desculpas pelos possíveis erros) e trabalho montando relatórios para um sistema via SQL.
Estou montando um relatório que envolve algumas tabelas e preciso somar o valor de uma coluna, ocorre que quando uso a função SUM no select com as junções das tabelas ele não me retorna a soma dos valores, se somo sem as junções das tabelas ele me retorna perfeitamente, segue abaixo o script:
Script que trás a soma corretamente:
SELECT SUM(VALOR)
FROM sophia.MOVFIN
WHERE VENDA = '14617' AND PARCELA = '2'
Resultado
---------------------------------------
329.0000
(1 linha(s) afetadas)
Script onde a soma não funciona corretamente:
SELECT DISTINCT
T.CODIGO As CODTURMA,
F.NOME As NOME,
F.CPF As CPF,
T.NOME As TURMA,
S.DESCRICAO As SEGMENTO,
F.CODEXT As RA,
F.OBSERVACOES As OBSERVAÇÃO,
case M.STATUS
WHEN 0 then 'Ativa'
WHEN 1 then 'Trancada'
WHEN 2 then 'Cancelada'
WHEN 3 then 'Transferida'
WHEN 4 then 'Evadida'
WHEN 5 then 'Concluída' end
as STATUS,
TAB.DESCRICAO1 As INDICADOPOR, SUM(MEN.VALOR) As MENSALIDADE
FROM SophiA.TURMAS T
LEFT join sophia.MATRICULA M on M.TURMA_REGULAR = T.CODIGO
LEFT join sophia.FISICA F on F.CODIGO = M.FISICA
LEFT join sophia.DADOSPF DF on DF.FISICA = F.CODIGO
LEFT join sophia.SEGMENTOS S on S.CODIGO = DF.SEGMENTO
LEFT join sophia.TAB_DESCRICAO_DADOS TAB on TAB.FISICA = F.CODIGO
LEFT join sophia.MOVFIN MOV ON MOV.VENDA = M.VENDA and MOV.PARCELA = '2'
LEFT join sophia.MOVFIN MEN ON MEN.TITULO = MOV.TITULO
WHERE T.CODIGO = '2214'
GROUP BY
T.CODIGO,
F.NOME,
F.CPF,
T.NOME,
S.DESCRICAO,
F.CODEXT,
F.OBSERVACOES,
M.STATUS,
TAB.DESCRICAO1,
MEN.VALOR
Desta forma, basicamente trás como resultado os três registros (mesma quantidade de registro que existe na tabela para estas condições) com números bem diferentes do registro real, não consegui associar os números a uma referencia para entender o que ocorre. Talvez algo que seja relevante mencionar é que pode-se conter números negativos nos registros, inclusive nessas colunas deste duas querys existem números negativos.
Pergunta
otaviinn
Boa noite pessoal, tudo bem?
É o seguinte, estou iniciando na área de SQL (inclusive já peço desculpas pelos possíveis erros) e trabalho montando relatórios para um sistema via SQL.
Estou montando um relatório que envolve algumas tabelas e preciso somar o valor de uma coluna, ocorre que quando uso a função SUM no select com as junções das tabelas ele não me retorna a soma dos valores, se somo sem as junções das tabelas ele me retorna perfeitamente, segue abaixo o script:
Script que trás a soma corretamente:
SELECT SUM(VALOR)
FROM sophia.MOVFIN
WHERE VENDA = '14617' AND PARCELA = '2'
Resultado
---------------------------------------
329.0000
(1 linha(s) afetadas)
Script onde a soma não funciona corretamente:
SELECT DISTINCT
T.CODIGO As CODTURMA,
F.NOME As NOME,
F.CPF As CPF,
T.NOME As TURMA,
S.DESCRICAO As SEGMENTO,
F.CODEXT As RA,
F.OBSERVACOES As OBSERVAÇÃO,
case M.STATUS
WHEN 0 then 'Ativa'
WHEN 1 then 'Trancada'
WHEN 2 then 'Cancelada'
WHEN 3 then 'Transferida'
WHEN 4 then 'Evadida'
WHEN 5 then 'Concluída' end
as STATUS,
TAB.DESCRICAO1 As INDICADOPOR,
SUM(MEN.VALOR) As MENSALIDADE
FROM SophiA.TURMAS T
LEFT join sophia.MATRICULA M on M.TURMA_REGULAR = T.CODIGO
LEFT join sophia.FISICA F on F.CODIGO = M.FISICA
LEFT join sophia.DADOSPF DF on DF.FISICA = F.CODIGO
LEFT join sophia.SEGMENTOS S on S.CODIGO = DF.SEGMENTO
LEFT join sophia.TAB_DESCRICAO_DADOS TAB on TAB.FISICA = F.CODIGO
LEFT join sophia.MOVFIN MOV ON MOV.VENDA = M.VENDA and MOV.PARCELA = '2'
LEFT join sophia.MOVFIN MEN ON MEN.TITULO = MOV.TITULO
WHERE T.CODIGO = '2214'
GROUP BY
T.CODIGO,
F.NOME,
F.CPF,
T.NOME,
S.DESCRICAO,
F.CODEXT,
F.OBSERVACOES,
M.STATUS,
TAB.DESCRICAO1,
MEN.VALOR
Desta forma, basicamente trás como resultado os três registros (mesma quantidade de registro que existe na tabela para estas condições) com números bem diferentes do registro real, não consegui associar os números a uma referencia para entender o que ocorre. Talvez algo que seja relevante mencionar é que pode-se conter números negativos nos registros, inclusive nessas colunas deste duas querys existem números negativos.
Agradeço muito a atenção de todos! :)
Editado por otaviinnLink para o comentário
Compartilhar em outros sites
0 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.