sql over()基本讲解
row_number():为查询出来的每一行记录生成一个序号
????? 用法:select row_number() over(order by col desc) as rownumber from tab
rank():over子句中排序字段值相同的情况下,增加一列以示区别,不相同的序列的序号为当前的当前记录数
???? 用法:select rank() over(order by col desc) as rank from tab
rankcol1aa1aa3bb4cc?
?????????????????????????????????????????????????dense_rank():over子句中排序字段值相同的情况下,增加一列以示区别,不相同的序列的序号接上前一个序号
????? 用法:select dense_rank() over(order by col desc) as denserank from tab
?
rankcol1aa1aa2bb3cc?
?
partition 分类统计标识
用法: select col1,col2,sum(col3) over(partitin by col1)?from tab 按照col1列分类对col3进行求和统计?