晚上所有,
我一直在努力解决这个问题,由于某种原因,我似乎无法让我的逻辑以我期望的方式返回。
我有 3 个数据表以及 3 个业务概念链接表。
- 表格1
- 表2
- 表3
规则:
- 表 1 可以链接到表 2
- 表1可以直接链接到表3
- 表1可以通过表2间接链接到表3
SELECT
*
FROM
Table1 T1
INNER JOIN Table1_to_Table2_Link L1 on L1.T1_ID = T1.ID
RIGHT JOIN TABLE2 T2 ON L1.T2_ID = T2.ID
INNER JOIN Table2_to_Table3_Link L2 ON L2.T2_ID = T2.ID
Right JOIN Table3 T3 ON L2.T3_ID = T3.ID
INNER JOIN Table1_to_Table3_Link L3 on T1.ID = L3.T1_ID
解释起来有点尴尬,但总的来说,我需要表 1 中的所有数据,并且只有表 2 和表 3 中的数据与表 1 直接/间接相关。表 2 和表 3 不一定必须有相关经营理念。