GRUPO SQL SUM por duas tabelas
Estou com dificuldades para escrever uma consulta SQL que agrupe corretamente account_no e subtraia um valor.
Em primeiro lugar eu escrevi esta consulta que atualiza tudo bem, exceto ACCOUNT_NO A-102 deve acabar como 4500 não como dois saldos corretos diferentes.
select transactions.account_no, account.balance, transactions.amount,
(account.balance + transactions.amount) AS "CORRECT BALANCE"
from transactions, account
where account.account_no = transactions.account_no;
ACCOUNT_NO| BALANCE | AMOUNT | CORRECTBALANCE
A-102 | 4000 | 2000 | 6000
A-102 | 4000 | -1500 | 2500
A-222 | 8000 | -1000 | 7000
A-305 | 2000 | 1300 | 3300
Eu tentei somar e agrupar pelo account_no, mas não consigo descobrir como fazer isso com as duas tabelas. Isso foi apenas algo que eu tentei, mas não consegui trabalhar.
select transactions.account_no, SUM(transactions.amount)
from transactions
group by transactions.account_no;
ACCOUNT_NO| SUM(TRANSACTIONS.AMOUNT)
A-305 | 1300
A-102 | 500
A-222 | -1000
O resultado esperado deve ser:
ACCOUNT_NO| BALANCE | AMOUNT | CORRECTBALANCE
A-102 | 4000 | 500 | 4500
A-222 | 8000 | -1000 | 7000
A-305 | 2000 | 1300 | 3300
Isso ocorre porque a conta A-102 tem dois valores diferentes saindo, mas do mesmo saldo.