我正在嘗試爲數據集中的每個走廊查找最大的milage走廊段數。我用這個非常類似的查詢找出最小milage,或增加方向走廊第一段和這個工作得很好:查找數據集中每個走廊的最大里程數參考
select distinct t.corridor_code_rb,t.frfpost,t.trfpost
from SEC_SEGMENTS t
where t.dir = 'I' and t.lane = 1
and t.frfpost = (select min(s.frfpost) from SEC_SEGMENTS s)
order by 1,2
然而,當我嘗試使用類似的查詢發現最大的問題出現(最後一段中增加方向)用下面的查詢走廊長度:
select distinct t.corridor_code_rb,t.frfpost,t.trfpost
from SEC_SEGMENTS t
where t.dir = 'I' and t.lane = 1
and t.trfpost = (select max(s.trfpost) from SEC_SEGMENTS s)
group by t.corridor_code_rb,t.frfpost,t.trfpost
當我運行此查詢是隻輸出第一走廊最高milage段會發生什麼,然後停止。而最低的查詢,它返回每個走廊的輸出,這是我想要的。 frfpost是每個部分的開始英里,trfpost是結尾的milage。所以frfpost是'來自參考帖子',而trfpost是'參考帖子'。每條走廊通常在與其他走廊之間的路口之間分成長度介於5至40英里之間的路段。我試圖找到每個走廊的最後部分,因此問題出在哪裏。
什麼是你的DBMS?它支持RANK嗎? – dnoeth
我使用pl-sql開發人員。我不知道排名 –