对于模糊的标题感到抱歉,我不知道怎么说这个。
假设您有一张桌子,例如火车上的下表停靠点以及此停靠点与下一站之间的距离:
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字段作为下一行的键,然后将它们的距离收集到列中。)
谢谢!
答案 0 :(得分:0)
在Oracle中,我认为这样的事情可能有用:
Select sum(distance)
from train_stops
start with stop = 'Middletown'
connect by stop = prior nextstop;