sqlserver分页的两种写法分别介绍


本文整理自网络,侵删。

第一种是最传统的写法,用存储过程中的变量作为分页的乘数
代码如下:

[c-sharp] view plaincopyprint?create proc p_paged1
@pageSize int,@currentPage int
as
select top (@pageSize) * from student
where id not in
(select top (@pageSize*(@currentPage-1)) id from student)
go
exec p_paged1 2,3
create proc p_paged1
@pageSize int,@currentPage int
as
select top (@pageSize) * from student
where id not in
(select top (@pageSize*(@currentPage-1)) id from student)
go
exec p_paged1 2,3

--SQL Server2005以后的分页语句
代码如下:

[c-sharp] view plaincopyprint?create proc p_paged2
@pageStart int, @pageEnd int
as
select * from
(select *,row_number() over(order by id desc) as rnum
from student) t
where t.rnum between @pageStart and @pageEnd
go

exec p_paged2 5,10

标签:SQL

相关阅读 >>

详解mysql插入数据后返回自增id的七种方法

mssql中having的用处详解

sqlserver、mysql、oracle三种数据库的优缺点总结

oracle基本plsql的使用实例详解

常用的sql数据库有哪些

关于对sql注入80004005 及其它错误消息分析

sql关系模型的知识梳理总结

sql是什么型数据库管理系统

mysql存储过程与函数详解

mysql架构体系知识点总结

更多相关阅读请进入《sql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...