Oracle sql中的序列/序列号

时间:2014-12-02 16:43:23

标签: sql oracle

我的问题类似于how to generate Serial numbers +Add 1 in select statement

但是我需要在Oracle sql中使用seq,如下所示

表1数据:

facility    store     stop_seq
32          729        1
32          380        2
32          603        3
12          722        4
12          671        5
48          423        6

我需要如下结果:

facility   res_seq
32          1
12          2
48          3

此处res_seq应根据表格1

中的stop_seq排序

请帮忙

1 个答案:

答案 0 :(得分:0)

select facility, row_number() over(order by max(stop_seq)) res_seq
from your_tab group by facility;

ROW_NUMBER在问题

中发布的链接中进行了解释

分析函数在GROUP BY之后执行,因此在此查询中,数据由facility聚合,然后分配行号