Grails标准查询检查`OR`逻辑

时间:2014-09-10 14:26:26

标签: grails gorm criteria

我有grails criteriaQuery,我正在检查OR逻辑,再次使用这样一个状态变量:

or {
     eq("status", Status.ONE)
     eq("status", Status.TWO)
     eq("status", Status.THREE)
  }

这段代码工作正常,我的问题是,因为我正在检查OR逻辑再次出现一个状态,有没有办法优化这个代码,如

 eq("status",Status.ONE || Status.TWO || Status.THREE)

提前致谢。

1 个答案:

答案 0 :(得分:3)

您可以使用

'in'( "status", [Status.ONE, Status.TWO, Status.THREE] ) 

或者只是

'in'( "status", Status.values() ) 

如果Status是枚举,其值为ONE,TWO&三