第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > Oracle DB2 SQLSERVER Mysql Access分页SQL语句梳理

Oracle DB2 SQLSERVER Mysql Access分页SQL语句梳理

时间:2019-11-11 05:46:31

相关推荐

Oracle DB2 SQLSERVER Mysql Access分页SQL语句梳理

最近把平时在项目中常用到的数据库分页sql总结了下。大家可以贴出分页更高效的sql语句。

sqlserver分页

第一种分页方法

需用到的参数:

pageSize 每页显示多少条数据

pageNumber 页数 从客户端传来

totalRecouds 表中的总记录数 select count (*) from 表名

totalPages 总页数

totalPages=totalRecouds%pageSize==0?totalRecouds/pageSize:totalRecouds/pageSize+1

pages 计算前pages 条数据

pages= pageSize*(pageNumber-1)

SQL语句:

select top pageSize * from 表名 where id not in (select top pages id from 表名

order by id) order by id

第二种分页方法

pageSize 每页显示多少条数据

pageNumber 页数

从客户端传来

pages=pageSize*(pageNumber-1)+1

select top pageSize * from 表名

where id>=(select max(id) from (select top pages id from 表名 order by id asc )

t )

mysql分页

需用到的参数:

pageSize 每页显示多少条数据

pageNumber 页数 从客户端传来

totalRecouds 表中的总记录数 select count (*) from 表名

totalPages 总页数

totalPages=totalRecouds%pageSize==0?totalRecouds/pageSize:totalRecouds/pageSize+1

pages 起始位置

pages= pageSize*(pageNumber-1)

SQL语句:

select *

from 表名 limit pages, pageSize;

mysql 分页依赖于关键字 limit 它需两个参数:起始位置和pageSize

起始位置=页大小*(页数-1)

起始位置=pageSize*(pageNumber -1)

oracle分页

pageSize 每页显示多少条数据

pageNumber 页数 从客户端传来

totalRecouds

表中的总记录数 select count (*) from 表名

totalPages 总页数

totalPages=totalRecouds%pageSize==0?totalRecouds/pageSize:totalRecouds/pageSize+1

startPage 起始位置

startPage=

pageSize*(pageNumber-1)+1

endPage=startPage+pageSize

SQL语句

select

a.* from

(

select rownum num ,t.* from 表名 t where 某列=某值 order by id

asc

)a

where a.num>=startPage and a.num<endPage

db2分页

int startPage=1 //起始页

int endPage; //终止页

int

pageSize=5; //页大小

int pageNumber=1 //请求页

startPage=(pageNumber-1)*pageSize+1

endPage=(startPage+pageSize);

SQL语句

select * from (select 字段1,字段2,字段3,字段4,字段5,rownumber()

over(order by 排序字段 asc ) as rowid from 表名 )as a where a.rowid >= startPage

AND a.rowid <endPage

access分页

pageSize 每页显示多少条数据

pageNumber 页数

从客户端传来

pages=pageSize*(pageNumber-1)+1

SQL语句

select top pageSize *

from 表名 where id>=(select max(id) from (select top pages id from 表名 order by

id asc ) t )

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。