如何使用 JPQL 一次获取 n 行?

How to get n rows at a time with JPQL?

我需要 JPQL 方面的帮助。我需要将此 PostgreSQL 语句转换为 JPQL,但我不知道该怎么做。

SELECT * FROM public.user_table 
ORDER BY id ASC 
OFFSET 5 ROWS
FETCH FIRST 5 ROW ONLY 

我试过这样写"SELECT u FROM user_table e ORDER BY id OFFSET 5 ROWS FETCH FIRST 5 ROW ONLY",但是不行

JPA 是对数据库的抽象,适用于所有数据库。我们有特定于数据库的东西,例如;

OFFSET 5 ROWS
FETCH FIRST 5 ROW ONLY

有关信息,IBM DB2 不支持这些。

所以 JPQL 通常不会支持它们。

我想本机查询是一种方式,或者您可以使用 pageablePageRequest 是 pageable 的一个很好的实现。