1
エンティティのコレクションをフェッチしてそのサイズを取得する可能性はありますか?以下のようなJPAサイズ取得のためのHibernateフェッチコレクション
何か:
FROM Cat c JOIN SIZE c.kittens
だから私は次のようにクエリの結果を使用することができます。
int sum = 0;
for(Cat c : em.createQuery("..", Cat.class).getResultList())
sum += c.getKittens().size();
サイズのみを取得する任意のキーワードや他の可能性があります。
その目的のためにコレクション全体をフェッチするのは大きな問題ではありませんが、パフォーマンスの向上を考えていて、これがどのように実行できるのか自分に尋ねましたか?
'COUNT'は合計ではなく、' SUM'を使って望みの結果を与えますループ。 – DrColossos
@DrColossos - OPは合計ではなく数を探しています。 – Perception
私はSUMは、アカウントテーブルの合計金額を得るのと同じように算術加算(3 + 8)のためだと思います。 'COUNT'はテーブル内の行数です。 – viktor