Hibernate 在where子句中使用参数的HQL
我目前正在尝试执行类似以下内容的HQL查询:Hibernate 在where子句中使用参数的HQL,hibernate,grails,hql,Hibernate,Grails,Hql,我目前正在尝试执行类似以下内容的HQL查询: ["friend1", "friend2", "friend3"].each { friend -> Query q = sessionFactory.currentSession.createQuery( """select p.screenName, count(*) from Person p where (p.:thisfriend.enem
["friend1", "friend2", "friend3"].each { friend ->
Query q = sessionFactory.currentSession.createQuery(
"""select p.screenName, count(*) from Person p
where (p.:thisfriend.enemies = :true)
group by p.screenName""")
.setParameter("thisfriend", friend)
(每个人都有3个“朋友”位置,其中一些可能是“敌人”),很明显,它对“thisfriend”的在线参数化感到不安。这里有没有巧妙的方法,或者我需要3个单独的查询?您不能对字段名使用参数。使用string.format或条件