我有两个对象。
@Entity
class Person extends Model {
...
@OneToOne
Category category;
}
@Entity
class Category extends Model {
...
}
我需要获取 5 个最常用的类别。我怎样才能做到这一点 ?
谢谢
编辑:解决方案
List<Object[]> c = Category.find(
"SELECT p.categorie, count(p.id) FROM Person p " +
"GROUP BY p.category ORDER BY count(p.category) DESC").fetch(2);
最佳答案
您的 JPQL 查询将如下所示:
SELECT p.category, COUNT(p.category)
FROM Person p
GROUP BY p.category
ORDER BY count(p.category) DESC
你也可以执行query.setMaxResults(5)。
关于java - 如何获取出现次数最多的对象集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7229768/