我正在尝试编写一条 SQL 语句来获取父级中所有子级的值的总和:
SELECT parent, child, sum(val)
FROM table_a
GROUP BY parent, child
ORDER BY parent, child
这给了我:
Parent1 Child1 123
Parent1 Child2 456
Parent2 Child1 789
Parent3 Child1 12
Parent3 Child2 345
我想要的是获取所有孩子,而不仅仅是每个父母的父母下方的孩子,如果它没有记录,则为其分配值 0。例如:
Parent1 Child1 123
Parent1 Child2 456
Parent2 Child1 789
Parent2 Child2 0
Parent3 Child1 12
Parent3 Child2 345
我可以用 GROUP BY 子句做到这一点吗?还是我需要使用子查询?