Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java (JPQL)-获取记录数最多的用户的查询_Java_Mysql_Jpa_Jpql - Fatal编程技术网

Java (JPQL)-获取记录数最多的用户的查询

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

请原谅我再次询问这个问题,但我需要有一个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 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查询中,使其完全等效。

非常感谢先生:)