有一个表table,字段qual,cata,price,内容如下:
cata qual price
1 1 100
1 1 200
1 1 300
2 2 100
2 2 200
2 2 300
2 2 400
我想得到这样的结果
cata qual price num
1 1 100 1
1 1 200 2
1 1 300 3
2 2 100 1
2 2 200 2
2 2 300 3
2 2 400 4
也就是说,按照cata,qual分组后,在每个分组里,按照price排序,得到price在这个分组里的排名num。请教各位在oracle 里的实现
cata qual price
1 1 100
1 1 200
1 1 300
2 2 100
2 2 200
2 2 300
2 2 400
我想得到这样的结果
cata qual price num
1 1 100 1
1 1 200 2
1 1 300 3
2 2 100 1
2 2 200 2
2 2 300 3
2 2 400 4
也就是说,按照cata,qual分组后,在每个分组里,按照price排序,得到price在这个分组里的排名num。请教各位在oracle 里的实现
OVER (PARTITION BY ual,cata ORDER BY price) as drank
FROM table看看行不?
from TAble
row_number()over()绝对不出现排名重复, ex:1,2,3,4...