MySQL 连接来自另一个的多个 ID Table
MySQL Join Multiple IDs From Another Table
我花了几个小时试图弄清楚如何为我的项目执行此操作,但我似乎也找不到解释它以研究正确事物的好方法,或者找不到答案我的问题,因此 post 在这里。
我有两个 table,如下所示,一个带有 ID 和名称,另一个带有与这些 ID 相关的字段。我需要能够将 ID 与名称相匹配。
Table 1:
ID | Name
---|----------
1 | Square
2 | Rectangle
3 | Circle
Table 2:
ID | Field1ID | Field1Data | Field2ID | Field2Data | Field3ID | Field3Data
---|----------|------------|----------|------------|----------|-----------
1 | 1 | Red | 3 | Green | 2 | Blue
我需要能够将 table 2 中的 FieldxID 与 table 1 中的名称相匹配,从而创建以下内容:
ID | Field1ID | Field1Data | Field2ID | Field2Data | Field3ID | Field3Data
---|----------|------------|----------|------------|-----------|-----------
1 | Square | Red | Circle | Green | Rectangle | Blue
如有任何帮助,我们将不胜感激。
您需要多个连接,每个 fieldID 一个连接
select b.Name, a.Field1Data, c.name, a.Field2Data, d.name, a.FieldeData
from table2 a
inner join table1 b on b.id = a.Field1ID
inner join table1 c on c.id = a.Field2ID
inner join table1 d on d.id = a.Field3ID
我花了几个小时试图弄清楚如何为我的项目执行此操作,但我似乎也找不到解释它以研究正确事物的好方法,或者找不到答案我的问题,因此 post 在这里。
我有两个 table,如下所示,一个带有 ID 和名称,另一个带有与这些 ID 相关的字段。我需要能够将 ID 与名称相匹配。
Table 1:
ID | Name
---|----------
1 | Square
2 | Rectangle
3 | Circle
Table 2:
ID | Field1ID | Field1Data | Field2ID | Field2Data | Field3ID | Field3Data
---|----------|------------|----------|------------|----------|-----------
1 | 1 | Red | 3 | Green | 2 | Blue
我需要能够将 table 2 中的 FieldxID 与 table 1 中的名称相匹配,从而创建以下内容:
ID | Field1ID | Field1Data | Field2ID | Field2Data | Field3ID | Field3Data
---|----------|------------|----------|------------|-----------|-----------
1 | Square | Red | Circle | Green | Rectangle | Blue
如有任何帮助,我们将不胜感激。
您需要多个连接,每个 fieldID 一个连接
select b.Name, a.Field1Data, c.name, a.Field2Data, d.name, a.FieldeData
from table2 a
inner join table1 b on b.id = a.Field1ID
inner join table1 c on c.id = a.Field2ID
inner join table1 d on d.id = a.Field3ID