JQL是否可以根据Enum的值获得计数?例如,Enum的值为Single,Married,Divorced等,并在单个Java Persistence Language Query中获取Persons Entity的数量?
答案 0 :(得分:2)
有两种方法,要么使用分组依据,要么在Select子句中使用子选择
Select Count(p), p.status from Person p group by p.status
,或者
Select (Select Count(p) from Person p where p.status = Status.Single), (Select Count(p) from Person p where p.status = Status.Married), (Select Count(p) from Person p where p.status = Status.Divorced)
但JPA不支持Select子句中的子选择(我认为至少是JPA 2.0,2.1),EclipseLink 2.4或更高版本确实支持这一点。