我想获得在其列表(firstsList或SecondsList)中包含特定用户的实例 在我的解决方案中,创建条件仅考虑第一个用户列表。 这似乎是对逻辑OR的错误用法
域
class ClassA {
static hasMany = [firstsList:User,SecondsList:User]
}
服务
def idList = ClassA.createCriteria().list () {
projections { distinct ( "id" )
property("name")
property("id")
}
or {
firstsList{eq("login", 'John')}
SecondsList{eq("login", 'John')}
}
order("name","desc")
}
return idList
答案 0 :(得分:1)
这背后的原因是hibernate默认使用inner join
。但在您的情况下,您需要left join
。为此,您可以使用createAlias
的{{1}}。
createCriteria