多个MySQL列链接到同一个引用表

时间:2015-04-08 03:44:25

标签: mysql sql

我是一名前端开发人员,需要快速指向我想从MySQL数据库获取的数据。

有一个表'events'包含多个列,包括'host_country'和'visiting_country'(events.host_country& events.visiting country)。这两列都包含引用各个国家/地区的数字,其值存储在“国家/地区”表中。

'countries'表有两列:'countries.id'和'countries.name'。我需要显示访问国和东道国的名称。

我可以使用其中一个“事件”列来处理联接,但在同一个“国家/地区”表中使用两个联接似乎不可行。

有没有办法使用'countries'表来获取events.visiting_country和events.host_country的名称?

谢谢! 马特

1 个答案:

答案 0 :(得分:2)

select e.*, c1.name, c2.name
  from event e
    inner join countries c1
      on c1.id = e.host_country
    inner join countries c2
      on c2.id = e.visiting_country;

两次加入国家/地区表。这是一个演示:http://sqlfiddle.com/#!9/3b785/1