CREATE Procedure prGetRecordByPage(@PageSize int, --每页的记录条数 @PageNumber int, --当前页面@QuerySql varchar(1000),--部分查询字符串,如* From Test order by id desc@KeyField varchar(500) )ASBegin Declare @SqlTable AS varchar(1000)Declare @SqlText AS Varchar(1000) Set @SqlTable='Select Top '+CAST(@PageNumber*@PageSize AS varchar(30))+' '+@QuerySqlSet @SqlText='Select Top '+Cast(@PageSize AS varchar(30))+' * From '+'('+@SqlTable+') As TembTbA '+'Where '+@KeyField+' Not In (Select Top '+CAST((@PageNumber-1)*@PageSize AS varchar(30))+' '+@KeyField+' From '+'('+@SqlTable+') AS TempTbB)'Exec(@SqlText) EndGO

评论