2017-10-12 184 views
0

有没有办法写一个row_number()函数,以便下面的标题列(HELP HERE)可以实现?我希望能够根据列d中的数据将列a到d排入桶中。自定义ROW_NUMBER函数

a b c d (HELP HERE) 1603 82 117276 36 1 1603 82 117276 36 1 1603 82 117276 37 2 1603 82 117276 37 2

如果我尝试row_number() over (partition by a,b,c order by d)数据这样

a b c d (HELP HERE) 1603 82 117276 36 1 1603 82 117276 36 2 1603 82 117276 37 1 1603 82 117276 37 2

+1

'秩()'或'DENSE_RANK反应()窗口函数应该这样做。下面是一个解释差异的SO问题:https://stackoverflow.com/questions/11183572/whats-the-difference-between-rank-and-dense-rank-functions-in-oracle – tommyO

+0

??如果您尝试显示row_number(),则HELP HERE列的值将为1,2,3,4,而不是显示的1,2,1,2。 – mathguy

回答

3

尝试DENSE_RANK()上(用d命令)

+1

非常感谢! – am340