对于 grails 应用程序,我需要找到一个对象列表,其“attr”是动态字符串列表中的一个。实际的 HQL 查询更复杂,但我需要帮助的是:
def result = MyObject.executeQuery("select o from MyObject as o where o.attr in :list",
[list: aListOfStrings])
这显然不是正确的语法,Grails 将其作为“意外标记”返回给我,即 :list
参数。
这在 HQL 中可能吗?我并不是特别想在代码库的这一部分中使用 Criteria。
最佳答案
将 :list 放在括号中:
def result = MyObject.executeQuery(
"select o from MyObject as o where o.attr in (:list)",
[list: aListOfStrings])
关于grails - 如何在HQL/GORM中表达 "where value is in dynamic list"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2993064/