Mysql 在第一个表的两列上有左联接

Mysql 在第一个表的两列上有左联接,mysql,left-join,Mysql,Left Join,我有一个关于MySQL语法的问题。 我有下面两张桌子 Name table ID Routing start end 1 Route 1 RTM1 RTM5 2 Route 2 RTM1 RTM4 3 Route 3 RTM3 RTM2 Location table ID Code Name Address 1 RTM1 Test1 Address1 2 RTM2 Test2 Address2 3 RTM3 Test3 Address3 4 RTM4 Test4 Addr

我有一个关于MySQL语法的问题。 我有下面两张桌子

Name table
ID Routing start end
1  Route 1 RTM1  RTM5
2  Route 2 RTM1  RTM4
3  Route 3 RTM3  RTM2

Location table
ID Code Name  Address
1  RTM1 Test1 Address1
2  RTM2 Test2 Address2
3  RTM3 Test3 Address3
4  RTM4 Test4 Address4
5  RTM5 Test5 Address5
这当然是我使用的数据库的一个非常简化的版本,但这将适合我的问题

所以我需要从位置表中输出名称。我该怎么做?我的左关节看起来怎么样

SELECT Routing, start, end
FROM name 
LEFT JOIN Location ON (not sure what here needs to come)
WHERE ID='1'
那么,如果我想按名称输出开始和结束,如何区分所需的2个位置呢

编辑: 这是我期望的输出:

[Routing] => Route 1
[Start] => Test1
[End] => Test5

如果我正确理解您的问题,这就是您要查找的查询:

SELECT
  n.ID,
  n.Routing,
  l1.Name AS start_name,
  l2.Name AS end_name
FROM
  Name AS n LEFT JOIN location AS l1 ON n.start=l1.Code
  LEFT JOIN location AS l2 ON n.end=l2.Code

(必须使用两个不同的别名(例如l1和l2)连接到位置表两次)

表之间的连接键是什么?开始列和结束列与位置表上的代码COLLMN相对应,如果这是您的意思,您能提供您期望的示例结果吗..我已更新了我的问题谢谢您的回答。我会在我的数据库里查一下,如果这真的是我要找的,这确实是我要找的。非常感谢:)