翻页的存储过程

CREATE PROC Turnpage    @qCols varchar(200),                --需要查询的列
 
   
   
   
 
 
   
   
     
       
         
       
     
     
   
 
 
   
   
   
 
    @qTables        varchar(200),      --需要查询的表 和条件    @iKey        varchar (20),      --标识字段    @oKey        varchar(20),        --排序字段    @pageSize        int,                --每页的行数    @pageNumber      int                  --要显示的页码, 从0开始ASset nocount onBEGIN    DECLARE @sqlText AS varchar(1000)    DECLARE @sqlTable AS varchar(1000)    SET @sqlTable = 'SELECT TOP '  CAST((@pageNumber  1) * @pageSize AS varchar(30))  ' '  @qCols  ' from '  @qTables  ' order by ' @oKey  ' desc'    SET @sqlText =        'SELECT TOP '  CAST(@pageSize AS varchar(30))  ' * '          'FROM ('  @sqlTable  ') AS tableA '          'WHERE '  @iKey  ' NOT IN(SELECT TOP '          CAST(@pageNumber * @pageSize AS varchar(30))  ' '  @iKey          ' FROM ('  @sqlTable  ') AS tableB)'  EXEC (@sqlText) --print(@sqltext)ENDGO

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [SQL] 的这些文章也感兴趣:

用wu-ftpd架设FTP服务器
网络SQL入侵与防范高级篇
SQL语言入门教程:第五课 删除数据库表格
根据规则自动生成序列号
NHibernate之旅(13):初探立即加载机制
IBatis.Net使用方法之一:下载、编译、运行NPetShop
破解SQL Prompt3
SELECT语句中的*号不为人知的其他作用
数据库开发的持续集成 - 方法和流程
IBatis.Net使用方法之十一:发现一个好用的IBatis.Net生成工具