tags:

views:

106

answers:

1

For a grails application, I need to find a list of objects whose "attr" is one in a dynamic list of strings. The actual HQL query is more complex, but the bit I need help with is this:

def result = MyObject.executeQuery("select o from MyObject as o where o.attr in :list",
    [list: aListOfStrings])

This is obviously not the right syntax, Grails throws it back at me as an "unexpected token", being the :list parameter.

Is this possible in HQL? I don't particularly want to use Criteria in this part of the codebase.

+3  A: 

Put :list in parens:

def result = MyObject.executeQuery("select o from MyObject as o where o.attr in (:list)",
    [list: aListOfStrings])
Burt Beckwith