我有两张这样的表
表1 - > route_table
route_id | BusNumber | StartStationID | DestStationID
1 | 90D | 1 | 2
2 | 100A | 1 | 1
表2 - > station_table
stationId | stationname
1 | Jadcherla
2 | Hyderabad
我想写一个sql查询来加入上面两个表并生成这个表
BusNumber | StartStation | DestStation
90D | Jadcherla | Hyderabad
100A | Jadcherla | Jadcherla
我尝试使用内部联接但无法报告三列。我无法找出谷歌的任何关键字。 sql的新手,对不起,如果这是一个基本问题
谢谢,
和Sandeep
答案 0 :(得分:2)
SELECT BusNumber,
Start.stationname AS StartStation,
Dest.stationname AS DestStation
FROM route_table
INNER JOIN station_table Start ON Start.stationId = StartStationID
INNER JOIN station_table Dest ON End.stationId = EndStationID
答案 1 :(得分:1)
左连接将执行此操作:
SELECT busnumber, d1.stationname, d2.stationname FROM route_table
LEFT JOIN dest d1 ON StartStationID = d1.stationId
LEFT JOIN dest d2 ON StartStationID = d2.stationId
证明有效
答案 2 :(得分:1)
SELECT
rt.BusNumber, startStation.stationname, destStation.stationname
FROM rout_table rt
LEFT JOIN station_table startStation ON rt.StartStationID = startStation.stationId
LEFT JOIN station_table destStation ON rt.DestStationID = destStation.stationId