【发布时间】:2019-03-30 03:45:44
【问题描述】:
Table 1 Bus_ID Owner_ID #owners in Bus
12345 5558 3
12345 5856 3
52858 **7894** 1
12345 1254 3
Table 2 Owner_1 Owner_2 Relationship
5558 5856 Parent of Owner_1
5558 1254 Parent of Owner_1
1254 5856 Spouse
5856 1254 Spouse
**7894** 6868 Spouse
6868 **7894** Spouse
我有两张桌子想加入。只能通过Owner_ID = Owner_1 或Owner_ID = Owner_2 加入。我想最终得到表 1 aswel 中的Owner_ID。
我的预期结果:
Bus_ID Owner_ID Owner_1 Owner_2 Relationship
12345 5558 5558 5856 Parent of Owner_1
12345 5558 5558 1254 Parent of Owner_1
12345 5856 5856 1254 Spouse
12345 1254 1254 5856 Spouse
如您所见,如果 Owner_ID 没有出现在表 1 中,我不希望它出现在联合表中,但是当加入 7894 时,因为表 2 中有关系,它会出现无论如何,我加入他们的方式。我需要帮助来连接这两个表。
select Bus_ID, Owner_ID, Owner_1, Owner_2, Relationship from table 1
join table 2 on (Owner_ID = Owner_1 AND Owner_ID = Owner_2).
这个查询不会给出我期望的输出。
【问题讨论】: