Soma de dados baseado em um ID de outra tabela
Pessoal, tenho duas tabelas. Uma se chama prestacoes e a outra despesas.
Cada prestação criada gera um id_prestacao que é único para cada uma gerada. Dentro da tabela despesas, se eu registro, por exemplo, 4 despesas, ficarão:
id_prestacao = 1, 1, 1, 1
id_despesa = 1, 2, 3, 4
-> Cada despesa tem um valor, ao qual está na tabela despesas com o nome precoDespesa.
-> O que eu gostaria é de poder, na tabela prestacoes, somar o valor destas despesas e colocar na coluna "valor_total" para cada id_prestacao gerado.
Qual seria a maneira mais adequada de fazer isto, e que eu poderia compreender a estrutura criada para fazer essa "filtragem"
UPDATE prestacoes SET valor_total = (
SELECT SUM(precoDespesa) FROM despesas
ORDER BY id_prestacao
)
Na tabela despesas, tenho atualmente
id_prestacao - id_despesa - Valor
1 - 1 - 30
1 - 2 - 40
1 - 3 - 30
Com essa tentativa, vamos supor que tenho a tabela prestações:
id_prestacao - projeto - ValorTotal
1 - Projeto A - 100
2 - Projeto B - 100
3 - Projeto C - 100
Ou seja, o valor total do somatório para o id_prestação está vindo como 100 (até ai tudo bem), porém não está filtrando na tabela prestações onde deve ser colocado. O 100, nesse caso, deveria ficar apenas na primeira linha, sendo os valores totais de B e C igual a 0.Discussão (3)
Carregando comentários...