计算唯一事务的行和第n次出现

时间:2013-10-29 15:37:18

标签: sql oracle

我有一个返回以下内容的查询:

CLA_CASE_NO ITEM_ID
1021321 9056580
1021321 9090998
1021321 9223063
1021321 9526427
1021549 9223054
1021549 9526380
1021704 9538932
1021704 9538933
1021704 9538934
1021726 9223408
1021726 9526379

但是我希望它返回以下内容:

CLA_NO  ITEM_ID NTH COUNT
1021321 9056580 1
1021321 9090998 2
1021321 9223063 3
1021321 9526427 4
1021549 9223054 1
1021549 9526380 2
1021704 9538932 1
1021704 9538933 2
1021704 9538934 3
1021726 9223408 1
1021726 9526379 2

我希望它根据item_id的顺序计数 任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:3)

您正在寻找row_number()分析函数:

select CLA_NO, ITEM_ID, 
       row_number() over (partition by cla_no order by item_id) as nth
from q