基本条件 尝试使用3.1.0和3.1.2均出现此问题 mysql数据库5.7 使用租户模式 问题描述: 分页查询后page的records数据量是pagesize的两倍,多次改变size查询均查出结果为size的两倍 查询sql: MyBatis-Plus 分页查询结果不一致的问题 查询打印日志 ==> Preparing: SELECT COUNT(1) FROM t_comment WHERE t_comment.merchant_id = 1 AND merchant_user_id = ? ==> Parameters: 4(Long) ==> Preparing: SELECT id, merchant_id, shop_id, order_id, goods_id, merchant_user_id, customer_name, avatar, grade, remark, picture_urls, create_time, anonymous_type FROM t_comment WHERE t_comment.merchant_id = 1 AND merchant_user_id = ? LIMIT ?,? ==> Parameters: 4(Long), 4(Long), 4(Long) <== Total: 8 limit 第二个参数为4结果返回8,不符合预期 返回结果打印: MyBatis-Plus 分页查询结果不一致的问题 如果pagesize=5 --> total=10 pagesize=6 --> total=12 sql本地试过了返回四条记录正确 MyBatis-Plus 分页查询结果不一致的问题 排查后怀疑是在分页查询内部的问题,请提供解决思路,谢谢

Comment From: miemieYaho

给出你的复现demo

Comment From: chenyixin8854

@miemieYaho 我又测了几遍,之前的问题描述有点片面,返回数据不是两倍,返回数据是当前页及之前页的合计,当前页换成1的话就返回数量正常,当前也是3的话就返回前三页的数据,项目不好拆,我自己先找找吧,谢谢

Comment From: chenyixin8854

确认了,问题是shardingjdbc引起的,和mybatis-plus没有关系

Comment From: lbin2012

@miemieYaho 我又测了几遍,之前的问题描述有点片面,返回数据不是两倍,返回数据是当前页及之前页的合计,当前页换成1的话就返回数量正常,当前也是3的话就返回前三页的数据,项目不好拆,我自己先找找吧,谢谢

这个最后是怎么解决的,项目中也遇到了

Comment From: RickZhangYixin

还能评论不?sharding3.1有这个问题,4.0.1就修复了