我正在尝试获得一份有多个“教育”的员工名单,每个人都有“教育类型”
因此,员工拥有一系列教育,每个教育都有一个具有名称的类型。
def unchecked = educationTypes?.unchecked
String query = "FROM Employee e, IN (e.education) AS ed WHERE ed.type.name IN (:typeNames)";
def matches = Employee.executeQuery(query, [typeNames: unchecked]);
上面的查询给出了以下内容:
Stacktrace follows:
org.hibernate.hql.ast.QuerySyntaxException: unexpected token: ed near line 1, column 39 [FROM Employee e, IN (e.education) AS ed WHERE ed.type.name IN (:typeNames)]
at $Proxy12.createQuery(Unknown Source)
所以我试图弄清楚如何正确访问它。非常感谢任何帮助
答案 0 :(得分:1)
尝试这样的事情:
Employee.executeQuery("""
select e from Employee e, Education ed
where ed.employee = e and ed.type.name IN (:typeNames)
""", [typeNames: [...]])