sqlserver时间函数_sql,server2008,排序函数

排序函数:

1.row_number() over(order by liename):根据order by后面的字段排序,为每一行给定一个唯一的行号

select row_number() over( order by iname desc ) as rowid ,iname from test

sql server2008 排序函数1

2.Rank():根据order by 后面的字段排序,order by后面的字段值相同序号就相同,序号可能是不连续的

select distinct rank() over( order by iname desc ) as rowid ,iname,iage from test

sql server2008 排序函数2

3. dense_rank():根据order by 后面的字段排序,order by后面的字段值相同序号就相同,序号是连续的

select distinct dense_rank() over( order by iname desc ) as rowid ,iname from test

sql server2008 排序函数3

4. ntile():先根据order by 后面对的字段排序,然后将排序结果分成规定的几个组,并为每个组指定一个组号

select distinct ntile(5) over( order by iname desc ) as rowid ,iname,iage from test order by rowid

sql server2008 排序函数4

总结:

1.row_number() over(order by liename):根据order by后面的字段排序,为每一行给定一个唯一的行号

2.Rank():根据order by 后面的字段排序,order by后面的字段值相同序号就相同,序号可能是不连续的

3. dense_rank():根据order by 后面的字段排序,order by后面的字段值相同序号就相同,序号是连续的

4. ntile():先根据order by 后面对的字段排序,然后将排序结果分成规定的几个组,并为每个组指定一个组号