我有三张桌子:
顾客
customer_id first_name
1 kapil
2 rajesh
帐户
Customer_id Account_id
1 S1
2 s2
收据
Recipt_id customer_id Account_id Transaction_type Amount
R1 1 s1 Deposit 40000
R2 2 s2 Deposit 300
R3 1 s1 withdrawal 2000
现在我将查询如下
select
c.customer_id,c.first_name,s.current_balance,s.account_id,
(select sum(amount)
from receipt as r ,
saving_account as s
where r.transaction_type='deposit'
and r.account_no = s.account_id
) as debit,
(select sum(amount)
from receipt as r ,
saving_account as s
where r.transaction_type='withdrawl'
and r.account_no = s.account_id
)as credit
from customer as c
left outer join saving_account as s
inner join receipt as r on r.customer_id = s.customer_id
on s.customer_id = c.customer_id
group by c.customer_id
但它给了我整行和信用的单一值,我不明白为什么它会这样显示....
我想要的结果是:
customer_id customer_name account_id debit credit balance
1 kapil s1 40000 2000 200
2 rajesh s2 300 null 500