PageHelper分页框架 自动统计总记录数性能问题优化

1. 问题: PageHelper自动统计总记录数(即count()方法)时存在性能问题

PageHelper.startPage(request.getPage(), request.getSize(),
                      request.isReturnTotal())
                    .doSelectPageInfo(() -> getEntitiesByCondition(condition, sort));

PageHelper 目前自动count()总记录数时对于数据量大的表或者复杂SQL存在性能问题,
框架生成count SQL的方式 是 对查询SQL直接在外面包一层

 select count(0) from (select * from yousql order by xxxx)

2. 解决

可以使用自定义count SQL的方式来处理这个性能问题:

    

    

具体参看如下截图

wecom-temp-91147a790be857404cfb71698176a3ab.png

你可能感兴趣的:(PageHelper分页框架 自动统计总记录数性能问题优化)