分页查询优化

分页查询优化:

起因:

一般来说分页查询可以使用select * from tablename limit m,n 进行分页,但由于数据库是直接找出n条,然后去掉前m条来进行查询,导致数据量很大时,速度会有明显下降,所以再次记一下进行优化的方式.

方法:
分页查询一般分两种,一种是电梯分页,一种是流式分页.

电梯查询:电梯分页通常是指像电梯按楼层一样,点击对应的页面进行跳转,如下所示
在这里插入图片描述
像这种一般只会给你显示几页,有些可能会给你填充数字去跳转,但一般来说很少使用,如果是只显示几页是很好解决的,直接做了相应的限制,很难达到数据量很大的情况,就算万一有人闲的没事干,一直往后翻页,则只需将数据的id保存下来,下次查询时使用此id去查询即可,对应的sql语句为 select * from comment where id >=( select id from comment use index(primary) where id>=? limit ?,1) limit ? ,而如果需要设计填充数字跳转,则对相应的跳转量进行限制即可,如果还是很慢,则可以考虑进行对半倒序的操作,即后一半的数据可以使用desc进行倒序分页查询即可.

流式查询:流式查询就是平时刷短视频一样,不断往下滑,就会不断有新的数据查询,这样的分页查询同样是可以保存上一次查询的id往下查,速度不会变慢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值