19

Is it possible to do an "in" criteria using the GORM criteria. I'm looking for the equivalent of the following SQL

select * from Person where age in (20,21,22);

If it was possible I guess the syntax would be something like:

def results = Person.withCriteria {
    in "age", [20, 21, 22]
}
Dónal
  • 185,044
  • 174
  • 569
  • 824

2 Answers2

34

The Grails createCriteria documentation includes an example of using the in clause:

'in'("holderAge",[18..65]) 
or not{'in'("holderAge",[18..65])}

The documentation includes this note:

Note: 'in' is a groovy reserve word, so it must be escaped by quotes.

James Allman
  • 40,573
  • 11
  • 57
  • 70
4

Yep, you have it almost exactly right. Just change in to 'in', since in is a keyword in groovy.

ataylor
  • 64,891
  • 24
  • 161
  • 189