Java (JPQL)-获取记录数最多的用户的查询
请原谅我再次询问这个问题,但我需要有一个JPA查询:Java (JPQL)-获取记录数最多的用户的查询,java,mysql,jpa,jpql,Java,Mysql,Jpa,Jpql,请原谅我再次询问这个问题,但我需要有一个JPA查询: select username, count(*) from Records group by username order by count(*) desc limit 1 我对smth的想法是: select r.username,count(*) from Records r order by r.username desc 然后打电话 getResultList().get(0) 但我只能写: select r from Rec
select username, count(*)
from Records
group by username
order by count(*) desc
limit 1
我对smth的想法是:
select r.username,count(*) from Records r order by r.username desc
然后打电话
getResultList().get(0)
但我只能写:
select r from Records r order by r.username desc
在这种情况下,我不知道如何得到我所需要的。
有人知道吗?SQL查询有group by和orders by count。JPA查询没有任何group by和orders by用户名。所以我不明白他们怎么能退回同样的东西 等价的JPQL查询是
select r.username, count(r.id)
from Record r
group by r.username
order by count(r.id) desc
如果您在查询对象上调用
setMaxResults(1)
,limit子句将添加到生成的SQL查询中,使其完全等效。非常感谢先生:)