【发布时间】:2018-03-24 04:55:49
【问题描述】:
我想在我的自定义查询中实现 Pageable。下面是我正在使用的代码。sql 是虚拟查询。有人可以告诉我如何计算总行数吗?
EntityManager em = OpenJPAUtils.openEntityManager();
String sql="select DISTINCT student.studentId from student where ... LIMIT :limit OFFSET :offSet ; "
query = em.createNativeQuery(sql);
query.setParameter("limit", pageable.getPageSize());
query.setParameter("offSet", pageable.getPageNumber());
query.getResultList()
我想要总计数,但我使用的限制只能提供这么多。我可以无限制地使用相同的查询来计算总行数,但查询非常大,我不想两次运行相同的查询来获取总计数并计算行数。 非常感谢您的帮助。
【问题讨论】:
-
所以你需要总行结果,最后一个结果是你想要计算的?
-
@SachinGupta 我想要总计数,但我使用的限制只会给出这么多。我可以无限制地使用相同的查询来计算总行数,但查询非常大,我不想运行相同的查询两次来获取总计数并计算行数。
-
使用计数查询获取总行数。
标签: java mysql spring jpa spring-boot