通用分页写法:

1 create PROCEDURE [dbo].[up_Basic_Person_getListByPage]
2 @tablename sysname,
3 @primarykey varchar(20),
4 @pageSize INT=10,
5 @currentPage INT=0,
6 @sqltemplate varchar(4000) =''
7 AS
8 set @sqltemplate='select top ({pageSize}) * from {tablename} where {primarykey} not in(select top ({pageSize}*({currentPage})) {primarykey} from {tablename})';
9 set @sqltemplate=replace(@sqltemplate,'{pageSize}',@pageSize);
10 set @sqltemplate=replace(@sqltemplate,'{currentPage}',@currentPage);
11 set @sqltemplate=replace(@sqltemplate,'{tablename}',@tablename);
12 set @sqltemplate=replace(@sqltemplate,'{primarykey}',@primarykey);
13 --print @sqltemplate
14 exec (@sqltemplate)
15 go

相关文章:

  • 2021-12-26
  • 2022-12-23
  • 2021-11-06
  • 2021-11-22
  • 2022-03-05
猜你喜欢
  • 2022-12-23
  • 2021-11-09
  • 2022-02-11
  • 2021-08-13
  • 2021-08-31
  • 2021-12-04
相关资源
相似解决方案