SQL。查询聚合某些依赖字段

时间:2010-09-30 17:05:04

标签: sql

对于模糊的标题感到抱歉,我不知道怎么说这个。

假设您有一张桌子,例如火车上的下表停靠点以及此停靠点与下一站之间的距离:

Stop         NextStop       Distance
------------------------------------
Middletown   Bloomsbury     101
Bloomsbury   Shanksville    36
Shanksville  New City       53
New City     Washington     339
Washington   Andover        48

问题是确定停止X和Y之间的距离。因此,例如,Middletown和Shanksville之间的距离是101 + 36 = 137。

有没有办法用单个查询执行此操作? (理想情况下,我正在寻找一种方法来迭代地遍历Stops列,方法是使用前一行的NextStop字段作为下一行的键,然后将它们的距离收集到列中。)

谢谢!

1 个答案:

答案 0 :(得分:0)

在Oracle中,我认为这样的事情可能有用:

Select sum(distance)
from train_stops
start with stop = 'Middletown'
connect by stop = prior  nextstop;