java将具有多个关系的实体与集合中的任何元素进行匹配
在JPA/JQL中,我已将Set<Tag>
作为输入,我希望找到与输入集中至少一个标记(:tags
)关联的实体
Tagged
实体有一个属性标签
@ManyToMany
private Set<Tag> tags;
查询应该是什么样子的?我试过了
SELECT t FROM Tagged t WHERE t.tags = ANY(:tags)
但这是不正确的。有人知道正确的查询应该是什么吗
示例:如果标记的实体具有标记("one", "two", "tree")
,并且我的:tags
输入参数是一组标记("three", "four")
,我希望匹配,因为"three"
是公共的
# 1 楼答案
我不相信
ANY(subquery)
是你想要的。我会用inner join来代替。比如: