gpt4 book ai didi

mysql - Hibernate 选择子查询

转载 作者:行者123 更新时间:2023-11-29 06:23:18 29 4
gpt4 key购买 nike

我有以下 hql 查询:

JgrelhasListBack = session.createQuery("from Jgrelhas where jtabuleiros.id=? and id<? order by id desc").setParameter(0, tabuleiroId).setParameter(1, grelhaId).setMaxResults(limitenovo).list();

我需要获得最后 5 个结果,所以我所做的是按 desc 排序并获得最大结果 5。但我需要按 Asc 排序...

我找到了一个解决方案,就是这样进行查询:

SELECT * FROM (
SELECT * FROM table ORDER BY id DESC LIMIT 50
) sub
ORDER BY id ASC

我试图在 hql 中复制它,但没有让它工作:

JgrelhasListBack = session.createQuery("select (select Jgrelhas from Jgrelhas where jtabuleiros.id=? and id<? order by id desc ) from Jgrelhas order by id asc").setParameter(0, tabuleiroId).setParameter(1, grelhaId).setMaxResults(limitenovo).list();

提前致谢

最佳答案

最简单的方法是反转 desc 有序列表:

List jgrelhasListBack = session.createQuery("from Jgrelhas where jtabuleiros.id=? and id<? order by id desc")
.setParameter(0, tabuleiroId)
.setParameter(1, grelhaId)
.setMaxResults(limitenovo)
.list();
return java.util.Collections.reverse(jgrelhasListBack);

关于mysql - Hibernate 选择子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32399888/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com