1

抱歉标题含糊不清,但我不太确定如何命名此过程。所以问题是我有两张桌子。第一个代表火车站及其顺序:

station_id | station_name 
1          |  station1 
2          |  station2 
3          |  station3 
4          |  station4 
5          |  station5 
6          |  station6 

第二个表表示乘坐火车从一个车站到另一个车站的价格(列station1_idstation2_id是上表列的外键station_id):

price_id | station1_id | station2_id | price 
1        |  1          |  2          |  0.4  
2        |  2          |  3          |  0.35 
3        |  3          |  4          |  0.32 
4        |  4          |  5          |  0.20 
5        |  5          |  6          |  0.25 

我想要做的是为想要从 A 站乘火车到 B 站的人计算车票的价格。例如,如果 A 站是“station2”,B 站是“station5”,那么我希望我的查询返回“0.87”。

也许有人可以就如何解决A站在B站之后的情况提出建议,即查询需要计算从下到上的车票价格。

先感谢您。

4

1 回答 1

0
SELECT SUM(price)
  FROM prices
  WHERE station1_id >= station1 AND station1_id < station2;

station2_id列是多余的。

于 2013-05-10T11:31:42.860 回答