使用com.github.pagehelper分页时,自定义row_id

使用场景:

例如,使用pagehelper排序时,查询sql时会很慢,所以想要使用“createDate ”字段自定义排序row_id

直接上代码

public class MyPage extends PageManager{

}

 

        MyPage page = new MyPage();
        //count查询,返回一个查询语句的count数
        long total = PageHelper.count(new ISelect() {
            @Override
            public void doSelect() {
                mapper.queryList(page);
            }
        });
        Page mypage = new Page(page.getPageNum(), page.getPageSize());
        mypage.setTotal(total);
        PageInfo>  pageInfo = new PageInfo(mypage);
        page.setSffy("1");//是否分页1是0否        
        pageInfo.setList(mapper.queryList(page));//这里是数据
		SELECT * FROM (
			select t.*
			,row_number()over( order by t.createDate asc ) ROW_ID
            from t_test t 

		)
		
			WHERE ROW_ID  (#{pageSize}*#{pageNum}) AND ROW_ID > ((#{pageNum}-1)*#{pageSize})
		

你可能感兴趣的:(mybatis,Java,数据库,java,数据库,开发语言)