2011-10-14 32 views
16

Có thể thực hiện tiêu chí "trong" bằng các tiêu chí GORM hay không. Tôi đang tìm kiếm tương đương với SQL sauGrails/GORM "trong" tiêu chí

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

Nếu nó đã có thể tôi đoán cú pháp sẽ là một cái gì đó như:

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

Trả lời

30

Các Grails createCriteria tài liệu bao gồm một ví dụ của việc sử dụng mệnh đề in :

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

Các tài liệu bao gồm ghi chú này:

Lưu ý: 'in' là một từ dự trữ hấp dẫn, vì vậy nó phải được thoát bằng dấu ngoặc kép.

4

Đúng, bạn có nó gần như chính xác. Chỉ cần thay đổi in thành 'in', kể từ in là một từ khóa trong groovy.