带有条件的JPA NamedQuery

时间:2017-07-13 06:37:21

标签: java hibernate jpa

我是JPA的新手,需要协助编写以下查询。我在wildfly,javaEE与hibernate等等。想法是在我的select语句中有两个条件。第一个条件应首先与所有行匹配,然后如果没有找到,第二个条件将与所有行匹配。

例如

(伪代码):

select * from myTable
where (con1) and (if no con1 try match con2)

匹配con1的行应返回,因为con1具有prio

永远不会返回匹配两个条件的行

如何在jpa 2.1中编写这样的查询?提前谢谢

1 个答案:

答案 0 :(得分:0)

从myTable中选择*,其中(CON1)或(CON2)

编辑:以上可能不正确。 您应该使用case语句:

  

如果您需要,我建议使用Case声明:

     

在Expr1的情况下,然后是Expr2,否则Expr3结束= desiredResult

,如https://stackoverflow.com/a/12320806/7913706