我的查询
Query query = entityManager.createQuery("SELECT m FROM MenuEntity m WHERE m.idParent = 0 AND m.menuProfiles IN :profile ")
.setParameter("profile",menuProfileEntitySet);
@OneToMany(fetch = FetchType.LAZY, mappedBy = "menu")
public Set<MenuProfileEntity> getMenuProfiles() {
return this.menuProfiles;
}
menuProfileEntitySet是一组MenuProfileEntity 查询失败,问题主题中出现错误
答案 0 :(得分:2)
您的查询无效。您可以测试单个菜单配置文件是否在一个集合中,但是如果整个菜单配置文件集合在另一个集合中则不能。您需要加入:
select distinct m from MenuEntity m
join m.menuProfiles profile
where m.idParent = 0 and profile in :profiles
这将返回idParent等于0并且在给定的一组配置文件中至少有一个配置文件的所有菜单实体。