SQL Server分页查询的两种方法


  本文标签: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执行速度比较快!