SQLServer 实现rownum 的功能

SQLServer 实现rownum 的功能
方法1: 

with   temp   as  

select  row_number()  over ( order   by  cityID)  as  rownum,cityName  from  city ) 

select   *   from   temp   where  rownum  between   10   and   20  

go  

解释: 

1  此方法把括号里的查询结果放到变量: temp  里面( 我也不确定是不是变量), 并用row_number() 函数进行一个行号跟踪, 再用over 函数进行一个列的排序规则( 是这必须的), 并指定列名为 ' rownum '  

2  紧接着在下面的语句可以对  ' rownum '  进行一个指定行号的查询 

3  此批语句执行完毕后, 变量: temp  释放 

方法2: 

select   identity ( int , 1 , 1 as  rownum, cityName  into  # temp   from  city 

select   *   from  # temp   where  rownum  between   10   and   20  

go  

解释: 

此方法跟上面的差不多的意思, 只不过把 row_number() 函数换成了 
identity () 函数 

并把结果集放在一个临时表里面, 当批语句执行完毕, 此临时表还可以使用 

你可能感兴趣的:(SQLServer 实现rownum 的功能)