我正在尝试检索两组信息(一个查询中该图的红色和蓝色部分)。

我以为可以使用如下所述的sql来做到这一点,但是当TableC没有记录时它什么也不会返回。如果TableC没有记录,我仍然希望该查询向我返回BLUE区域指示的结果。



感谢任何指针,以向我返回红色和/或蓝色部分。在此先感谢=]

最佳答案

尝试这样的事情

SELECT A.* FROM TableA A
LEFT OUTER JOIN TableB B ON (A.id = B.a_id)
LEFT OUTER JOIN TableC C ON (A.id = C.a_id)
WHERE B.a_id IS NOT NULL
  OR c.a_id IS NOT NULL

10-06 05:38