我有三个表:界限,站和时间
绑定具有2列:boundID和boundName
工作站具有3列:stationID stationName boundID
时间有4列:timeID出发时间tramID站号
如果用户在文本字段中输入的工作站具有相同的boundID,我想显示用户输入的startStation和endStation并显示时间。目前,这是我设法做的所有事情,似乎无法获得结果。任何帮助将不胜感激!
//display tram times from one station to another
ELSE if($startStation != '' && $endStation !='' && $DepartureTime =='' && $DepartureTime2 =='')
$query ="SELECT b.boundName, s.stationName, t.departureTime
FROM Station s, Time t, Bound b
INNER JOIN Bound b
ON S.boundID=B.boundID
WHERE s.stationName = '$startStation'AND'$endStation'";
我尝试以下操作时会收到此消息:“非唯一表/别名:'b'”
这是我拥有的数据的示例:
stationID stationName boundID
5 |城市广场| 2 ________________________________________________________________________________
boundID boundName
2 |南南行________________________________________________________________________________
timeID出发时间tramID stationID
1 | 07:18:00 | 1 | 5
预期结果是,如果boundID相同,则用户能够插入startStartion和endStation并获得出发时间。
这是我要输出的结果
绑定名称|起始站|终点站|出发时间
南南界|斯托顿|城市广场| 09:49:00
最佳答案
尝试将查询更改为以下内容:
SELECT b.boundName as bond_name, s.stationName as station_name, t.departureTime as departure_time
FROM Station as s, Time as t, Bound as b
INNER JOIN Bound as b
ON s.boundID = b.boundID
WHERE s.stationName = '$startStation' AND s.stationName = '$endStation'
关于php - 内部联接问题PHP,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37189798/