对值为“0”的条目进行排序

时间:2015-02-18 08:47:26

标签: java hibernate

我正在尝试使用hibernate条件检索数据库中的行。 我想在最后使用Hibernate获取值为“0”的条目。例如,如果条目出现在DB中,则列如下:

0
2
3
1
0
然后执行查询后我应该

1
2
3
0
0

1 个答案:

答案 0 :(得分:2)

关于如何将排序标准注入Hibernate对象,有一篇很好的文章here

要实现您正在寻找的那种排序,您将使用类似的技巧:

String hql = "... ORDER BY CASE WHEN f.value = 0 THEN 1 ELSE 0 END, f.value";

请注意,这是未经测试的代码,只能用于理解这个想法。您的数据库可能需要CASE关键字的其他表单。

基本上,您按两个值排序,一个是硬编码,将所有零都放在末尾,然后按实际值进行子排序。