分享一个关于解决Mysql limit分页在数据很多时的查询速度慢问题
17-09-18 15:41
字数 458
阅读 3754
Limit 分页的语法大家都知道limit offset rows
加入我有一张表有400+数据
我现在要做分页功能,我的sql是这样的
select xxx,xxx,xxx,from tablename where xxx,xxx,xxx order by xxx,xxx limit 15,15
假如在where
条件下共有39条数据,我每页显示15条数据,那么第二页是limit 15, 15
,第三页是limit 30, 15
。
我们大多情况下回直接这么写,因为我不知道最后一页应该有多少数据,所以我直接limit {页码}, {每页显示数量}
。
这样写在前两页是没有问题的,但是查到最后一页的时候会非常慢。
经测试在前两页我的执行时间是0.5s之内,还能接受, 但是最后一页的执行时间却是2m多
!!!
怎么解决这一问题呢,经过我的摸索,我发现如果提前把最后一页的rows
算出来,速度会非常快。
比如在这个问题里最后一页的查询如果我们写成limit 30, 9
,那么查询时间就大大缩减了。
解决办法很简单,我们只需要拿着where
方法把总数算一下,然后把sql
处理下就行啦。
0人点赞>
0 条评论
排序方式
时间
投票
快来抢占一楼吧
请登录后发表评论
相关推荐
文章归档
2024-11
1 篇
2024-06
1 篇
2024-05
2 篇
2024-04
2 篇
2024-03
2 篇
展开剩余 68 条
2024-01
1 篇
2023-10
1 篇
2023-09
1 篇
2023-08
1 篇
2023-06
1 篇
2023-04
1 篇
2022-12
2 篇
2022-06
1 篇
2022-04
4 篇
2022-03
3 篇
2022-01
6 篇
2021-12
2 篇
2021-11
2 篇
2021-10
2 篇
2021-09
1 篇
2021-08
2 篇
2021-07
4 篇
2021-06
1 篇
2021-05
3 篇
2021-04
3 篇
2021-01
2 篇
2020-11
1 篇
2020-10
3 篇
2020-09
2 篇
2020-08
1 篇
2020-07
5 篇
2020-06
5 篇
2020-05
1 篇
2020-04
1 篇
2020-03
2 篇
2020-02
3 篇
2020-01
1 篇
2019-11
5 篇
2019-10
10 篇
2019-09
12 篇
2019-08
17 篇
2019-07
8 篇
2019-05
3 篇
2019-04
8 篇
2019-03
7 篇
2019-02
8 篇
2019-01
5 篇
2018-12
7 篇
2018-11
8 篇
2018-10
4 篇
2018-09
7 篇
2018-08
12 篇
2018-07
9 篇
2018-06
6 篇
2018-05
11 篇
2018-04
18 篇
2018-03
1 篇
2018-02
2 篇
2018-01
10 篇
2017-12
14 篇
2017-11
44 篇
2017-10
13 篇
2017-09
4 篇
2017-08
12 篇
2017-07
5 篇
2017-06
4 篇
2017-05
2 篇
2017-04
3 篇
2017-03
9 篇
2017-02
3 篇
2017-01
2 篇
2016-12
10 篇
2016-11
4 篇
最新文章
最受欢迎
11-07 19:00
06-26 11:51
05-17 17:08
05-17 10:59
04-11 17:05
13 评论
11 评论
10 评论