存储过程分页

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

 


ALTER PROCEDURE [dbo].[GetDataByPager2]
   @startIndex INT,--起始记录数,从0开始
   @tableName VARCHAR(50),
   @pageSize INT=5,
   @condition VARCHAR(1000)='1=1',
   @key VARCHAR(20)='id',
   @orderType VARCHAR(20)='desc'
AS
BEGIN
  DECLARE @TopCount INT
  --SET @TopCount=(@pageIndex-1)*@pageSize
  DECLARE @SQL  VARCHAR(1000)
  SET @SQL='select  TOP ' +CONVERT(VARCHAR(20),@pagesize)+' * FROM '+@tableName
           +' WHERE '+ @condition+' and '+@key+' NOT IN(SELECT TOP  ' +CONVERT(VARCHAR(20),@startIndex)+' '+@key+' FROM '+@tableName+' where '+@condition+' order by '+@key+' '+@orderType+') order by '+@key+' '+@orderType
  --SET @SQL =@SQL+' SELECT COUNT(*) FROM '+@TableName+' WHERE '+@condition
  PRINT(@SQL)
  EXEC(@SQL)
END

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值