我有以下两个实体 (1:N) :
@Entity
public class Job {
@ManyToOne
private User user
}
和
@Entity
public class User {
@OneToMany
private Collection<Job> jobs;
}
现在我想用 jpql 编写一个命名查询,它可以让用户拥有最多的工作。
通过对作业实体的以下查询,我能够检索每个用户的作业数量......但不知何故,我必须将其与拥有最大工作数量的用户的工作数量进行比较......
@NamedQuery(query="SELECT j.user, COUNT(j) FROM Job j GROUP BY j.user" )
我的第二个想法是在 User 实体上编写命名查询:
@NamedQuery( query="SELECT u.username FROM User u WHERE SIZE(u.jobs) = MAX ??????")
在这里我也不知道如何获得最大分配工作的数量....
有人可以帮帮我吗?