0
我有与标签相关的软件 - 多对多。 我想创建一个查询,它将选择所有与我作为参数放置的所有标签相关的软件。我可以在JPQL中使用子句IN来选择这两个项目吗?
我写:
公共静态列表searchByTags(列出代码){
TypedQuery query =
Software.em().createQuery("SELECT DISTINCT s FROM Software s, IN(s.tags) t WHERE t IN(:tags)", Software.class);
query.setParameter("tags", tags);
return query.getResultList();
}
但它不是我想要的。例如,如果我有:
soft1 -> tag1,tag2
soft2 -> tag2
它会选择我两个。但我只想要一个 - soft1。 如何创建这样的查询?