mssql sqlserver 将select输出结果加上序号的两种方法分享


摘要:
在平常的报表查询中,我们时常需要将查询出的结果重新编号,并返回新的编号给客户端,下文将通过举例的方式,讲述如何对查询出的结果进行编号,如下所示:
实验环境:sql server 2008 R2


下文将通过例子讲述对输出结果进行编号的方法:

实现思路:
使用开窗函数 row_number 或 rank 对数据重新编号。

   create table [maomao365.com]
    (sort varchar(10),
     info  varchar(30)
    )
     go
 
     ---生成基础数据
     insert into [maomao365.com](sort, info)values
        ('sql','爱好者'),('mssql','数据库'),('sqlblog','个人脚本记载器')
      go
   
      ---方式1:使用row_number函数重新编号
      select ROW_NUMBER() OVER (ORDER BY a.info ASC) AS [序号],
                 a.* from  [maomao365.com]  a 
     
     ---方式1:使用rank函数重新编号
      select Rank() OVER (ORDER BY a.info ASC) AS [序号],
                 a.* from  [maomao365.com]  a 
     
    go
    truncate table [maomao365.com]
    drop       table [maomao365.com]