版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fengkang511/article/details/84941738
SQLServer适用
DECLARE @cid INT = 658842 ,
@pageindex INT = 1 ,
@pageCount INT = 10;
SELECT *
FROM ( SELECT TOP ( @pageCount * @pageindex )
ROW_NUMBER() OVER ( ORDER BY id DESC ) rownum ,
COUNT(1) OVER ( ) AS countnum ,
id AS newid
FROM tablename c WITH ( NOLOCK )
WHERE cid = @cid
) t1
INNER JOIN tablename WITH ( NOLOCK ) ON id = t1.newid
WHERE t1.rownum > ( @pageindex - 1 ) * @pageCount
ORDER BY t1.rownum;