我有两张桌子:
收入(月,金额)
支出(月,金额)
我需要每个月显示表收入其金额减去支出金额(如果存在)。
我想我需要在两个表之间使用左外连接,比如
SELECT income.amount - expenditure.amount
FROM income left outer join expenditure on income.month = expenditure.month
但我不知道该怎么做 http://sqlfiddle.com/#!9/7a7d5/1
如果有人可以帮助解决这个问题 感谢。
答案 0 :(得分:1)
我认为如果没有收入,那么这应该被视为0,同样也用于支出。
MySQL没有完整的外部联接,但你可以做类似的事情:
SELECT month, SUM(amount) FROM
(SELECT month, income AS amount
FROM income
UNION
SELECT month, - expenditure AS amount
FROM expenditure) a
GROUP BY month;
这会创建两个表的并集(为简单起见,支出为负数)。然后简单地按月汇总金额和组。
答案 1 :(得分:0)
试试这个OP:
SELECT [gross] = ISNULL(income.income - expenditure.expenditure ,0)
FROM income
left outer join expenditure on income.month = expenditure.month
答案 2 :(得分:0)