jfinal分页问题

分页SQL如下

sql1:select field1,fied2,...

sql2:from a group by xxx order by xxx

根据jfinal 的规则 后面的SQL 会拼接 select count(*) ,MySQL数据库中,这种情况的count(*) 并非总记录条数,而是分组数据的总数,导致分页显示不准确。

我的处理方式是把整个结果集作为一个临时表 

sql1: select a.* 

sql2:from (xxx) a 

评论区

linuxea

2017-07-25 21:34

是不是考虑一下升级你正在使用的版本

JFinal

2017-07-25 23:38

这个是典型的 sql 最外层带有 group by 子句的分页情况,用一下带有 boolean isGroupBySql 的 paginate 方法就可以了:
paginate(int pageNumber, int pageSize, boolean isGroupBySql, String select, String sqlExceptSelect, Object... paras)

其中第三个参数传入 true 即可

热门反馈

扫码入社