所以,我正在与之抗争,无法找到解决方案。这是问题所在: 我们有三张桌子。第一个通过id连接到第二个,第三个通过id连接到第二个,并且第一个和第三个之间没有连接。
我需要从第一个表格加入name
,从第三个表格加入id
的总和。
我试图使用子查询,但未能组织加入。
有什么建议吗?
答案 0 :(得分:1)
所以你有一个三级别的问题。这可能会对你有所帮助
select Tab1.name, sum(Tab3.id)
from Tab1
join Tab2
on Tab1.id = Tab2.tab1_id
join Tab3
on Tab2.id = Tab3.tab2_id
group by Tab1.id
答案 1 :(得分:1)
在三表连接查询中,您可以这样:
SELECT tab1.name, COUNT(tab3.id) AS sum_ids
FROM tab1 INNER JOIN tab2 ON tab1.id=tab2.tab1_id
INNER JOIN tab3 ON tab2.id=tab3.tab2_id GROUP BY tab1.id;