![]() | 1 BBCCBB 2020-09-29 10:06:43 +08:00 不用他的 page 函数, 自己手动加上 offset limit. |
![]() | 2 zoharSoul 2020-09-29 10:07:37 +08:00 把 count 去掉. 大多数情况下 count 都没啥用, 分页最好换种方式 |
3 DeathBless OP @zoharSoul 因为有查询条件 还不少 每张表都有 变了总数就要变 |
4 maigebaoer 2020-09-29 10:31:02 +08:00 via Android page count join 耗性能的都被你用上了 |
5 DeathBless OP @maigebaoer 所以怎么办 |
![]() | 6 ganbuliao 2020-09-29 10:46:41 +08:00 count(*) |
![]() | 7 zhaokun 2020-09-29 10:48:55 +08:00 他的原理是在你的 sql 外面包了一层 select count(*) from (你的 sql) |
![]() | 8 pierswu 2020-09-29 10:54:35 +08:00 可以 setSearchCount(false)去掉查询总数的,这种分页的需求,如果需求允许的话,不一定每一次翻页都要查一次总数。 |
9 aegon466 2020-09-29 10:56:34 +08:00 mp 分页还是要全部查出来再分页的 建议自己优化 |
![]() | 10 zoharSoul 2020-09-29 11:55:07 +08:00 @DeathBless 总数给前端个 99999 得了 |
![]() | 11 NPC666 2020-09-29 11:57:07 +08:00 via Android 试试用 pagehelper 进行分页? |
12 aguesuka 2020-09-29 12:03:30 +08:00 via Android 前端要就手写,不要就不查。现代 sql 解释器查总数还要 6 秒说明 sql 有问题,该改改,该加索引加索引,该拆表拆表 |
13 aguesuka 2020-09-29 12:06:46 +08:00 via Android 查 count6 秒查数据 0.3 秒估计也做没排序吧?(或者是按主键)这样分页是有问题的 |
![]() | 15 cheng6563 2020-09-29 12:20:03 +08:00 via Android 数据多了分页要快要这样: 1.不查总数。 2.用主键按偏移量分页,这样会限制翻页数量,比如 where id > 2233 limit 20,10 最好是按日期,时间之类的字段加索引进行限制 |
![]() | 16 zoharSoul 2020-09-29 13:26:57 +08:00 |
18 gundam0603 2020-09-29 14:42:05 +08:00 有的版本开始 count 可以手动写,自己写个去掉没有的子查询和关联,会快不少,再慢就只能加 count 的缓存了 |
![]() | 19 xiaochong0302 2020-09-29 14:48:53 +08:00 @pierswu 那就要用自定义的分页组件了,其实 count 也可以缓存起来,离不开自定义 |
20 gundam0603 2020-09-29 14:52:19 +08:00 @xiaochong0302 直接写 Count 方法覆盖就行了,从某个版本开始就支持了,这种治标不治本,让产品看看需不需要总数吧 或者加条件什么的,数据量大了迟早会不行的 |
![]() | 21 wangsongyan 2020-09-29 14:57:15 +08:00 我的系统日志就是固定 10000 条 |
![]() | 22 Sasasu 2020-09-29 15:09:15 +08:00 带着 fliter 数 count 就是这样子的 看你们团队谁强势 - 产品强势:就这么放着,等产品觉得慢,然后告诉他数总数花了 6 秒 - 开发强势:返回假的总数或者用游标翻页 |
![]() | 23 lewis89 2020-09-29 15:26:19 +08:00 还没改吗? 把 SQL parse 好 然后修改语法树 有这么难吗? |
24 gundam0603 2020-09-29 16:15:51 +08:00 @xiaochong0302 搞错了 没这功能。。。。 |
26 gageshan 2020-09-29 17:05:16 +08:00 利用自增字段来做分页,where p_id > xxx order by p_id limit 10 |
![]() | 27 BenjaminReed 2020-09-30 09:11:16 +08:00 歪个楼, 楼主大大用 MP 做多表关联分页怎么搞定的? 是自己手写 SQL 吗? |