我是一名前端开发人员,需要快速指向我想从MySQL数据库获取的数据。
有一个表'events'包含多个列,包括'host_country'和'visiting_country'(events.host_country& events.visiting country)。这两列都包含引用各个国家/地区的数字,其值存储在“国家/地区”表中。
'countries'表有两列:'countries.id'和'countries.name'。我需要显示访问国和东道国的名称。
我可以使用其中一个“事件”列来处理联接,但在同一个“国家/地区”表中使用两个联接似乎不可行。
有没有办法使用'countries'表来获取events.visiting_country和events.host_country的名称?
谢谢! 马特
答案 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