我有一个映射表,引用来自两个不同表的ID . 我想选择映射表,每个id被相应表中的另一个字段替换 .
更明确一点:有三个表,每个表有两列:
-
Table1有一个id(主键)和field1
-
Table2有一个id(主键)和field2
-
Table3(映射表)包含字段Table1_id(在Table1.id中取值)和Table2_id(在Table2.id中取值)
我想要的是将Table1.field1和Table2.field2的Table3的内容作为列 .
我知道如何使用内部联接替换映射表中的一个列与其他表之一的另一列:
SELECT Table1.field1, Table3.Table2_id
FROM Table1
INNER JOIN Table3
ON Table1.id=Table3.Table1_id;
但是我不知道如何用两列基本上做同样的事情 .
4 回答
如果我理解正确,你试图从表1中获得
field1
,从表2中获得field2
. 如果是这样,你只需要加入三个表做另一个加入 .
你只需要加入所有三个表;就像是
我不知道我是否正确理解了你想要实现的目标,但这应该可以从两个表中加入他们的结果