SQL Server分页查询的两种方法

SQL Server分页查询是我们经常要用到的,下面就为您介绍两种SQL Server分页查询的实现方法,如果您对此方面感兴趣的话,不妨一看。

pagesize: 每页显示记录数
cureentpage:当前页数

 
 
 
  1. select * from (   select TOP pagesize * FROM ( SELECT TOP pagesize*cureentpage   * from user_table   ORDER BY id ASC ) as aSysTable   ORDER BY id DESC ) as bSysTable   ORDER BY id ASC 

比如:要求选取 tbllendlist 中 第3000页的记录,每一页100条记录。

----------
方法1:

 
 
 
  1. ----------  
  2. select top 100 * from tbllendlist   
  3. where fldserialNo not in  
  4. (  
  5. select top 300100 fldserialNo from tbllendlist   
  6. order by fldserialNo  
  7. )  
  8. order by fldserialNo 

方法2:

 
 
 
  1. ----------  
  2. SELECT TOP 100 *   
  3. FROM tbllendlist   
  4. WHERE (fldserialNo >   
  5. (SELECT MAX(fldserialNo)   
  6. FROM (SELECT TOP 300100 fldserialNo   
  7. FROM tbllendlist   
  8. ORDER BY fldserialNo) AS T))   
  9. ORDER BY fldserialNo 

方法1执行速度比较快!

 

 

 

【编辑推荐】

sql server查询字段详细信息

sql server查询平均值的实现

SQL Server查询优化的11种方法

SQL Server FROM子句的语法

SQL Server跨服务器建立视图

THE END