gpt4 book ai didi

java - 按多个值排序 hibernate

转载 作者:行者123 更新时间:2023-11-29 03:14:05 32 4
gpt4 key购买 nike

Event带有参数的实体:id longisActive boolean目的是按 id desc 排序但是isActive值 1 应该位于列表的顶部,只有在那之后才会变为 0 值(无混合)。我可以仅使用 Hibernate 查询或首先创建查询来执行此操作 FROM Event event order by active desc然后使用 java.util.Comparator?

最佳答案

您可以仅使用 JPQL/HQL 执行此操作,而无需在 Java 中对结果进行排序:

FROM Event ORDER BY active DESC, id DESC

HQL 和 JPQL 允许您按多个字段对结果进行排序,就像 SQL 一样。您可以在 Java EE docs 中找到有关 ORDER BY 用法的更多信息。 .

如果你的数据库中有这样的数据:

id  active
1 0
2 1
3 0
4 1
5 1

那么这就是这个查询将返回的内容:

id  active
5 1
4 1
2 1
3 0
1 0

关于java - 按多个值排序 hibernate ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27666676/

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