Dónal
Dónal

Reputation: 187499

Grails/GORM "in" criteria

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]
}

Upvotes: 19

Views: 18273

Answers (2)

ataylor
ataylor

Reputation: 66059

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

Upvotes: 4

James Allman
James Allman

Reputation: 41158

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.

Upvotes: 34

Related Questions