2015-05-15 77 views
0

有沒有辦法創建一個row_number「即時」沒有按列排序?我有此查詢:沒有訂單排序

select regexp_substr(',A-B,B-C,C-D', '[^,]+', 1, level) as legs 
      from dual 
     connect by regexp_substr(',A-B,B-C,C-D', '[^,]+', 1, level) is not null 

,我需要讓我的旋轉次數,但我也需要一個等級,以確保旋轉將是很好的。我試圖看看rank,dense_rank,row_number,......但他們都需要一個命令,我不能使用它。

它將給這樣的事情

Rank | Legs 
1  | A-B 
2  | B-C 
3  | C-D 

回答

2

您可以只使用level,但你需要它別名:

select level as rnk, 
    regexp_substr(',A-B,B-C,C-D', '[^,]+', 1, level) as legs 
from dual 
connect by regexp_substr(',A-B,B-C,C-D', '[^,]+', 1, level) is not null; 

     RNK LEGS  
---------- ------------ 
     1 A-B   
     2 B-C   
     3 C-D