具有多个字段的JPQL组

时间:2012-01-18 03:29:09

标签: java sql jpa playframework jpql

我想帮助理解以下JPQL查询。上下文是一个简单的博客应用程序,其中帖子和标签具有多对多的关系。我们正在尝试查找标记为传递给方法的所有标记的帖子:

public static List<Post> findTaggedWith(String... tags) {
    return Post.find(
            "select distinct p from Post p join p.tags as t where t.name in (:tags) group by p.id, p.author, p.title, p.content,p.postedAt having count(t.id) = :size"
    ).bind("tags", tags).bind("size", tags.length).fetch();
}

基本上,我想让某个人为我打破那个查询中发生的事情。具体来说,我对使用GROUP BY和多个字段感到困惑。我认为,如果我们按照id进行分组,这是唯一的,那么按其他任何方式进行分组将是多余的。我错过了什么?

0 个答案:

没有答案