我需要以下查询的一些帮助。我相信我这个得太多,但这里有云:如果没有条目存在,则需要使用JOIN来检索总和或RIGHT表中的0
SELECT
bc.name,
bc.category_id,
bc.ref_id,
COALESCE(bc.parent_id,bc.category_id) as parent_category_id,
(select name FROM budget_categories bc2 WHERE bc2.category_id = bc.parent_id) as parent_name,
(select ref_id FROM budget_categories bc2 WHERE bc2.category_id = bc.parent_id) as parent_ref_id,
COALESCE(sum(bee.amount),0) as amount
FROM
budget_expected_expenses bee, budget_categories bc
WHERE
bc.group_id IN (1,139) AND
bee.group_id = 1 AND
bee.date BETWEEN '2012-01-01' AND '2012-01-31' AND
bee.cat_id = bc.category_id
GROUP BY bee.cat_id ORDER BY bc.ref_id ASC
基本上我们的目标是,以返回“BC”表(无论是否由集团或总部创建的每个类别的总和 - 在这个案例1和139分别来自'蜜蜂'表。如果“蜜蜂”中没有特定组的条目,我需要它返回0.但是,此查询仅返回实际在“蜜蜂”表中具有条目的值的总和。我确定有些东西我失踪了,但是,我错过了它。提前致谢。
注:我试过各种连接,似乎没有任何工作。显然这是可能的,我只是空白。