微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我可以使用JPQL中的IN子句来选择这两项吗?

如何解决我可以使用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 举报,一经查实,本站将立刻删除。