使用MYSQL从交易表中获取可用余额

时间:2018-06-27 05:37:01

标签: mysql

enter image description here

我尝试使用SQL QUERY获取特定帐号的可用余额,我的代码如下:

选择总和(金额)作为Cr形式的交易,其中credit = 1和account_no = 2549 联盟 选择总和(金额)作为博士形式交易,其中借方= 1且account_no = 2549

Cr-Dr差异

2 个答案:

答案 0 :(得分:0)

您可以使用case来获取

select sum(case when credit=1 then amount else 0 end) as Cr ,
sum(case when debit=1 then amount else 0 end) Dr,
sum(case when credit=1 then amount else 0 end) - sum(case when debit=1 then amount else 0 end) as available_balance
from `transaction` 
where account_no=2549

答案 1 :(得分:0)

下面的查询应该可以帮助您获得可用余额。

select sum(amt) from 
(select 
case 
    when credit=1 then amount
    when debit=1 then -amount
    else 0 
end as amt
from transaction 
where account_no = 5294)t;