您可以使用子查詢
SELECT (q.Amount - q.Expense) AS `diff` FROM
(
(SELECT (SUM(a.Amount)
FROM amount a GROUP BY a.UserId) AS `Amount`,
(SELECT SUM(i.Amount)
FROM incomes i GROUP BY i.UserId) AS Expense,
) q
:或加入
SELECT (q.Amount - q.Expense) AS `diff` FROM
(
SELECT SUM(a.Amount) AS `Amount` ,SUM(i.Amount) AS `Expense`
FROM amount
JOIN incomes i ON (a.UserId=i.UserId)
GROUP BY i.UserId
) q
或者你可以嘗試FULL OUTER JOIN,因爲它們不存在,但你仍然可以通過使用UNION
做同樣的
SELECT (q.Amount - q.Expense) AS `diff` FROM
(
(SELECT (SUM(a.Amount) AS `Amount` , NULL AS `Expense`
FROM amount a GROUP BY a.UserId)
UNION ALL
(SELECT NULL AS `Amount`, SUM(i.Amount) AS Expense
FROM incomes i GROUP BY i.UserId)
) q