Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用“值”对条目进行排序;0“;最后_Java_Hibernate - Fatal编程技术网

Java 使用“值”对条目进行排序;0“;最后

Java 使用“值”对条目进行排序;0“;最后,java,hibernate,Java,Hibernate,我正在尝试使用hibernate条件检索数据库中的行。 我想在最后使用Hibernate为列获取值为“0”的条目。例如,如果条目在DB中显示为以下列: 纵队 0 2 3 1 0 然后在执行查询之后,我应该得到 纵队 1 2 3 0 0有一篇关于如何将排序条件注入Hibernate对象的好文章 要实现所需的排序,您需要使用以下技巧: String hql = "... ORDER BY CASE WHEN f.value = 0 THEN 1 ELSE 0 END, f.value"; 请注意,

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

纵队 0
2
3
1
0
然后在执行查询之后,我应该得到

纵队 1
2
3
0
0

有一篇关于如何将排序条件注入Hibernate对象的好文章

要实现所需的排序,您需要使用以下技巧:

String hql = "... ORDER BY CASE WHEN f.value = 0 THEN 1 ELSE 0 END, f.value";
请注意,这是未经测试的代码,应仅用于理解想法。您的数据库可能需要为
案例
关键字使用不同的表单


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

向我们展示您迄今为止所做的尝试以及您需要帮助/帮助的地方。