我正在尝试运行一个 Hibernate
查询,该查询返回除最后 5 行之外的所有行,所以我的 sql 查询如下:
session.createQuery("FROM Book
WHERE id NOT IN(SELECT id FROM Book ORDER BY ID DESC LIMIT 5)
ORDER BY title");
不幸的是,Hibernate
中不允许使用 LIMIT
,所以我收到一条错误消息:
HTTP Status 500 - org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: LIMIT near line 1, column 78 [FROM models.Book WHERE id NOT IN(SELECT id FROM models.Book ORDER BY ID DESC LIMIT 5) ORDER BY title]
我该如何解决这个问题?
最佳答案
这里有答案
How do you do a limit query in HQL?
Limit was never a supported clause in HQL. You are meant to use setMaxResults().
关于java - Hibernate:如何选择除最后 N 行以外的所有行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39853873/