读书人

sql over()根本讲解

发布时间: 2012-09-28 00:03:35 作者: rapoo

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进行求和统计?

读书人网 >SQL Server

热点推荐