如何解决我可以使用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。
如何创建这样的查询?
解决方法
我找到了答案:
TypedQuery查询=
Software.em()。createQuery(\“ SELECT s
FROM Software的INNER JOIN s.tags标签
标记在(:tags)中的分组依据
COUNT(tag)=:size \“,Software.class);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。