从第一个 table 开始加入 2 列

have left join on 2 columns from first table

我对 MySQL 语法有疑问。 我有以下 2 个表

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

(您必须加入位置 table 两次,使用两个不同的别名,例如 l1 和 l2)