java – distinct内连接hql
发布时间:2020-12-15 02:34:15 所属栏目:Java 来源:网络整理
导读:我有以下hibernate实体 public class Container { ... @OneToMany private ListACLEntry aclEntries;} 为了保护我的容器实例,我使用以下实体: public class ACLEntry { ... private Long sid; private boolean principal; private Integer mask;} 将自动创
我有以下hibernate实体
public class Container { ... @OneToMany private List<ACLEntry> aclEntries; } 为了保护我的容器实例,我使用以下实体: public class ACLEntry { ... private Long sid; private boolean principal; private Integer mask; } 将自动创建hql-queries以便搜索容器实例, select container from Container container inner join container.aclEntries as aclEntry with bitwise_and (aclEntry.mask,1) = 1 and (aclEntry.sid = :userId or aclEntry.sid = :roleId) 这个问题是,aclentry连接可能返回2个结果,这将导致重复的容器结果. 有谁知道如何解决这个问题? 解决方法
据我所知,你需要一个可容纳Container对象的多个条目的容器,只需用以下代码替换你的hql查询:
将select distinct添加为本机查询. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |