gpt4 book ai didi

java - 在 JPA Criteria API 查询中使用 countDistinct 的示例

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:46:31 24 4
gpt4 key购买 nike

我无法弄清楚如何表示以下 JPQL 查询:

SELECT count(e) FROM Foo e

使用标准 API。我正在尝试的是:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Foo> c = cb.createQuery(Foo.class);
Root<Foo> f = c.from(Foo.class);
c.select(cb.count(f));

但这行不通。我也试过:

c.select(cb.count(f.get("id"));

这是针对 JPA2、Eclipselink 的。

最佳答案

试试这个,这是与 hibernate 3.5.1 一起工作的:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Long> c = cb.createQuery(Long.class);
Root<Foo> f = c.from(Foo.class);
c.select(cb.count(f));
int count = em.createQuery(c).getSingleResult().intValue();

关于java - 在 JPA Criteria API 查询中使用 countDistinct 的示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2595065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com