我有2个表:和值从2列从2个表忽略结果等于0
Table "credits":
id amount
1 8
2 7
3 2
4 1
5 5
6 4
和
Table "debits":
id amount
1 3
3 2
4 1
5 3
我需要得到每个ID的总余额(信用D编辑)但留下余额= 0。理想情况下,这样的事情:
id balance
1 5
2 7
5 2
6 4
到目前为止,我有这样的:
SELECT id, SUM(amount) as balance,
FROM
(
SELECT id, amount FROM credits
UNION ALL
SELECT id, -amount FROM debits
)
unified_table
GROUP BY id
,但它是包括结余= 0:
id balance
1 5
2 7
3 0
4 0
5 2
6 4
我想:
SELECT id, SUM(IF(amount > 0, amount, 0)) as balance,
还有:
WHERE balance > 0
和其他修改,但他们不工作。我正在用尽想法。请帮助,我怎样才能将余额0?谢谢
添加有平衡> 0以后按id分组这应该这样做 – Cherif
哇谢谢你!它的工作就像一个魅力。为什么'哪里平衡> 0'不工作,'有平衡> 0'工作? – karlosuccess