mysql - 将多个列内连接到一个 ID

标签 mysql sql join left-join

我不负责数据库,所以我无法更改格式,我意识到这是一个可怕的数据库。

我有两张 table 想要加入:

表1:地址簿

id | name | address | phone number | email

表2:团队

id | person1_id | person2_id | person3_id | person4_id | person5_id | person6_id

我想加入所有具有地址簿中姓名的 personX_id。我似乎不知道如何加入多个专栏。希望有人能帮忙!

谢谢

最佳答案

如果 person_id 只有 6 列,则可以使用多重联接

  select a1.name 
  from team t 
  left  join address_book a1 on a1.name = t.person1_id 
  left  join address_book a2 on a2.name = t.person2_id 
  left  join address_book a3 on a3.name = t.person3_id 
  left  join address_book a4 on a4.name = t.person4_id 
  left  join address_book a5 on a5.name = t.person5_id 
  left  join address_book a6 on a6.name = t.person6_id 

关于mysql - 将多个列内连接到一个 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51132477/

相关文章:

php - 通过中间表筛选基于相似类别的结果

python - 如何将数据的时间窗口插入到与具有唯一约束的现有行部分重叠的表中

MySQL 'variable' 在 CASE 中不可用

c++ - boost::range::join 用于多个范围

mysql - SQL 查询 : Get the minimal element, 高于一个特定元素

javascript - 如何在附加表行时调用 ajax?

ruby-on-rails - 如何在 ActiveRecord 中加入 SUM

mysql - 打印所有重复行

php - WordPress、Apache、MySQL 和 Mac

php - 从日期=本月的数据库中获取最大行号+1