SQLite で、coalesce() または ifnull() を使用して、LEFT JOIN の null 値に 0 を設定しようとしています。この質問が多く寄せられていることは知っていますが、行き詰まっています。
BUDGET
amount category
2 food
2 book
2 movie
EXPENSE
amount category
2 food
2 book
EXPECTED RESULT
budsum budcat expsum
2 food 2
2 book 2
2 movie 0
これは私が行ったクエリです。
SELECT SUM(budget.amount) AS budsum, budget.category AS budcat,
SUM(coalesce(expense.amount,0)) AS expsum
FROM budget
LEFT JOIN expense
ON budcat=expense.category
GROUP BY budcat;
SELECT SUM(budget.amount) AS budsum, budget.category AS budcat,
SUM(coalesce(expense.amount,0)) AS expsum
FROM budget
LEFT JOIN expense
ON budcat=expense.category
GROUP BY budcat;