[织梦CMS教程] MySQL的分页查询

[复制链接]
查看2351 | 回复9 | 2019-1-17 17:30:17 | 显示全部楼层 |阅读模式

limit 基本实现方式

一般情况下,客户端通过传递 pageNo(页码)、pageSize(每页条数)两个参数去分页查询数据库中的数据,在数据量较小(元组百/千级)时使用 MySQL自带的 limit 来解决这个问题:

收到客户端{pageNo=1,pagesize=10} 
select * from table limit (pageNo-1)*pageSize, pageSize;
收到客户端{pageNo=5,pageSize=30} 
select * from table limit (pageNo-1)*pageSize,pageSize;

建立主键或者唯一索引

在数据量较小的时候简单的使用 limit 进行数据分页在性能上面不会有明显的缓慢,但是数据量达到了 万级到百万级 sql语句的性能将会影响数据的返回。这时需要利用主键或者唯一索引进行数据分页;

假设主键或者唯一索引为 good_id 
收到客户端{pageNo=5,pagesize=10} 
select * from table where good_id > (pageNo-1)*pageSize limit pageSize;

返回good_id为40到50之间的数据

基于数据再排序

当需要返回的信息为顺序或者倒序时,对上面的语句基于数据再排序。order by ASC/DESC 顺序或倒序 默认为顺序

select * from table where good_id > (pageNo-1)*pageSize order by good_id limit pageSize;

返回good_id为40到50之间的数据,数据依据good_id顺序排列

回复

使用道具 举报

北京愤怒羔羊猩 | 2020-11-30 10:18:18 | 显示全部楼层
祝愿悟空源码越办越好!
回复

使用道具 举报

龙的传人739 | 2021-3-28 19:03:39 | 显示全部楼层
站长真良心,这么大的资源站都是免费下载
回复

使用道具 举报

陈陈430 | 2021-6-18 22:11:52 | 显示全部楼层
悟空源码太厉害,资源真多!
回复

使用道具 举报

成圣 | 2021-7-12 06:47:02 | 显示全部楼层
找了很多地方都不能下载,终于在悟空源码找到了
回复

使用道具 举报

山东大鲤鱼 | 2021-9-7 11:51:01 | 显示全部楼层
我是来白嫖悟空源码的资源的!
回复

使用道具 举报

深圳林妙可 | 2022-1-17 20:48:36 | 显示全部楼层
资源太多了,准备办个会员
回复

使用道具 举报

旭日非常 | 2022-6-1 14:46:21 | 显示全部楼层
这个资源都有真不错
回复

使用道具 举报

123457166 | 2022-6-1 23:45:51 | 显示全部楼层
这个下载站资源真齐全
回复

使用道具 举报

龙的传人739 | 2023-6-14 23:10:47 | 显示全部楼层
这个下载站资源真齐全
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则