Mybatis-plus + PageHelper 关于自定义selectCount后的坑
为什么需要自定义selectCount
项目中使用Mybatis-plus + PageHelper做分页时,会通过默认COUNT方法查询sql的total条数,在实际开发中,多数情况下会存在需要排序的情形,即sql中存在ORDER BY。这就导致了在执行sql时产生报错。
解决方案
在这种情况下,就需要自定义这条selectList的selectList_Count方法.
产生的新问题
执行select查询时,会先调用自定义selectList_Count方法,当若存在条件的情况下,假设selectList_Count方法执行结果为0条,则程序不会再执行selectList方法。因此,在自定了Count方法后,要始终保持两条sql的查询条件保持一致,避免因自定义Count方法未查询到总数,导致不执行最终的查询sql。