account_noを正しくグループ化し、金額を差し引くSQLクエリを作成するのに問題があります。
最初に、ACCOUNT_NO A-102が2つの異なる正しい残高ではなく、4500になることを除いて、すべてを正常に更新するこのクエリを作成しました。
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
account_noで合計してグループ化しようとしましたが、2つのテーブルでこれを行う方法を理解できません。これは私が試しただけのことでしたが、うまくいきませんでした。
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
期待される結果は次のとおりです。
ACCOUNT_NO| BALANCE | AMOUNT | CORRECTBALANCE
A-102 | 4000 | 500 | 4500
A-222 | 8000 | -1000 | 7000
A-305 | 2000 | 1300 | 3300
これは、アカウントA-102には、2つの異なる金額が出ていますが、残高が同じであるためです。