0
我有一个包含用户表,credit_purchase表和credit_spend表的应用程序。我正在尝试获取用户当前拥有的信用额度。为每个用户在两个表中选择SUM
信贷表如下所示:
credit_purchase
+----+---------+-------+---------------------+
| id | user_id | coins | timestamp |
+----+---------+-------+---------------------+
credit_spend
+----+---------+-------+---------------------+
| id | user_id | coins | timestamp |
+----+---------+-------+---------------------+
我试图做的是选择SUM(credit_purchase.coins) - SUM( credit_spend.coins)为每个用户。现在我有这样的事情:
SELECT users.*, COALESCE(SUM(credit_purchase.coins) - SUM(credit_spend.coins), 0)
FROM users
LEFT JOIN credit_purchase ON users.id = credit_purchase.user_id
LEFT JOIN credit_spend ON users.id = credit_spend.user_id
GROUP BY users.id
但是,它的结果是不正确的数字。这似乎是正确的购买总和,但乘以购买数量的支出乘以SUM。
我在做什么错?
谢谢!
哎呀。我用错误的表名写了问题。该编辑反映了我一直在使用的应用程序。 – David 2012-07-26 00:10:00