一、语法

方案一:使用top分页 select top 页码大小 查询字段 from 表名 where 主键 not in (select top (页码大小 * 当前页(以0开始))查询字段 from 表名) 方案二:使用row_number分页 select 查询字段 from (select ROW_NUMBER() over(order by 主键) 别名1 ,查询字段 from 表名)别名2 where 别名1 between X and Y

二、示例

方案一:使用top分页 declare @PageSize int = 10 --页码大小变量 declare @PageIndex int = 1 --当前页码变量 select top(@PageSize) * from Student where SId not in (select top((@PageIndex)*@PageSize) SId from tblStudent)

方案二:使用row_number分页 declare @PageSize int = 5 declare @PageIndex int = 1 select * from (select ROW_NUMBER() over(order by SId) RowId,Student.* from tblStudent) A where RowId between (@PageIndex*@PageSize+1) and (@PageIndex*@PageSize)

查看原文