gpt4 book ai didi

java - 用于大小检索的 JPA Hibernate Fetch Collection

转载 作者:行者123 更新时间:2023-11-30 04:55:20 25 4
gpt4 key购买 nike

是否有可能仅仅为了检索实体的大小而获取实体的集合?

类似于:

FROM Cat c JOIN SIZE c.kittens

所以我可以使用如下查询的结果:

int sum = 0;

for(Cat c : em.createQuery("..", Cat.class).getResultList())
sum += c.getKittens().size();

是否有任何关键字或其他可能性来仅获取大小。

为此目的获取整个集合并不是一个大问题,但我只是在考虑性能改进并问自己如何做到这一点?

最佳答案

您可以在 JPQL 中使用 SQL 聚合函数对于单猫

select count(*) from Kittens k where k.cat = :cat

同时针对每只猫(Kittens 表中的所有行)

select count(*) from Kittens k

并将其检索为

Long size = (Long) query.getSingleResult();

关于java - 用于大小检索的 JPA Hibernate Fetch Collection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8744709/

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