我有一个 MySQL 数据库,我在其中运行某些存储过程。
在其中一个中,我想总结某个用户必须支付的金额,他已经支付的金额并返回所有用户,其中要支付的金额不等于支付的金额。我想出了以下(简化的)查询:
SELECT userId, SUM(costs) as sum_costs,
(SELECT SUM(payed)
FROM payments p WHERE ta.userId=p.userId) as sum_payed
FROM ta
GROUP BY ta.userId
ORDER BY ta.userId;
这给了我每个用户的费用和付款的总和。但我不知道,我如何才能只选择成本和付款不相等的用户。
WHERE sum_costs != sum_payed
不起作用,因为 mysql 不知道 WHERE 子句中的“sum_costs”列。
任何想法,如何让选择工作?