问题描述
|
我正在使用Oracle。
假设我有一张桌子,上面有这个随机的样本:
columnA | columnB | content
--------------------------------
AfBkxZ | 292 | a
LDglkK | 181 | b
AfBkxZ | 51 | c
AfBkxZ | 315 | d
LDglkK | 808 | e
Cee89g | 1 | f
我想在其中有一个视图,在此视图中columnA中的每个值都有一个唯一的编号,并在columnA具有该值的行中记录编号。
根据上面的示例数据获得所需结果:
Group_number | Record_number | columnB | content
------------------------------------------------
1 | 2 | 292 | a (1.2)
3 | 1 | 181 | b (3.1)
1 | 1 | 51 | c (1.1)
1 | 3 | 315 | d (1.3)
3 | 2 | 808 | e (3.2)
2 | 1 | 1 | f (2.1)
我可以用row_number() over (partition by columnA order by columnB asc)
得到record_number
。
如何获得实际上是旧actually5的友好序列别名的ѭ4?
谢谢。
解决方法
您可以使用
dense_rank
对columnA进行编号:
dense_rank() over (order by columnA)