2011-10-14 19 views
16

È possibile eseguire un criterio "in" utilizzando i criteri GORM. Sto cercando l'equivalente del seguente SQLCriteri Grails/GORM "in"

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

Se era possibile Credo che la sintassi sarebbe qualcosa di simile:

def results = Person.withCriteria { 
    in "age", [20, 21, 22] 
} 

risposta

30

Il createCriteria documentazione Grails include un esempio di utilizzo della clausola in :

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

La documentazione include questa nota:

Nota: "in" è una parola di riserva groovy, quindi deve essere preceduta da virgolette.

4

Sì, avete quasi esattamente ragione. Basta cambiare in a 'in', dal in è una parola chiave in groovy.