分页SQL

1.分页

要实现分页,必须知道某一页的数据从哪里开始到哪里结束。
<以下假设页面大小为10>

SQL Server / Oracle 从 1 开始计数
第n页        开始        结束
1                 1             10
2                 11            20
n         (n-1)x10+1    n*10

Mysql是从第0页开始计数
第n页        开始        结束
0                 0              9
1                 10            19
n                nx10    (n+1)*10-1

2.SQL实现

MySql实现分页功能的sql语句:

通式:select * from student limit  页码 x页面大小 ,页面大小;

Oracle的分页sql语句:(n为页码,假设10为页面大小)

select * from
(
	select rownum r,t.*from
	(select s.* from student s order by sno asc) t
	 where rownum<=n*10
)  where r>=(n-1)*10+1;

SQL Server的分页sql语句:

select * from student order by sno 
offset  (页数-1)*页面大小  rows fetch next 页面大小 rows only; 

3.分页实现的前提 变量准备

5个变量:

a.数据总量 :select count(*)…
b.页面大小 : 用户自定义
c.总页数 :程序自动计算
d.当前页码 :用户自定义
e.当前页的对象集合(实体类集合):select *from student…(分页sql语句)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值