如何从tableb中选择tableb\u名称并连接到mysql中的tablea?

nue99wik  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(299)

我有两张tablehere:-

Table A
tableA_id
tableB_id1
tableB_id2
tableB_id3

Table B
tableB_id
tableB_name

如何将这两个表合并为一个结果并返回结果like:-

tableA_id  tableB_id1 tableB_name1 tableB_id2 tableB_name2 tableB_id3 tableB_name3

**1,2,3中的tableb\u名称将基于tableb\u id1,2,3中的值。谢谢。

wwtsj6pe

wwtsj6pe1#

你需要加入 tableb 3次 tablea 根据你目前的结构

select a.tableA_id,
    b1.tableB_id tableB_id1,
    b1.tableB_name tableB_name1,
    b2.tableB_id tableB_id2,
    b2.tableB_name tableB_name2,
    b3.tableB_id tableB_id3,
    b3.tableB_name tableB_name3
from tablea a
join tableb b1 on a.tableB_id1 = b1.tableB_id
join tableb b2 on a.tableB_id2 = b2.tableB_id
join tableb b3 on a.tableB_id3 = b3.tableB_id

您当前的架构被限制为对的3个引用 tableb ,如果你需要另一个怎么办。如果这两个表之间存在多对多关系,我建议您重新构造表,并包含一个连接表来关联这些表
表AB\U轴

tablea_id tableb_id
1           6
1           7
1           8

相关问题