Java 在JPA查询中使用GROUPBY和having

Java 在JPA查询中使用GROUPBY和having,java,orm,jpa,jpql,Java,Orm,Jpa,Jpql,您将如何使用JPA查询语言执行以下操作 select * from person where email in (select email from person group by email having count(email)>1) 最终找到了一个解决方案: select p from Person p where p.email in ( select q.email from Person q group by q.email having count(

您将如何使用JPA查询语言执行以下操作

select * from person where email in
(select email from person group by email having count(email)>1)

最终找到了一个解决方案:

select p from Person p
where p.email in (
    select q.email
    from Person q
    group by q.email having count(q.email)>1)
order by p.email, p.id
从中,有一个JPA SELECT查询的一般结构说明:

SELECT ... FROM ...
[WHERE ...]
[GROUP BY ... [HAVING ...]]
[ORDER BY ...]